Magazine · · 2 min read
Built statically: why our sites come from a generator
No database, no framework, no site builder: our websites are generated from data files. What sounds old-fashioned is a decision made for the next twenty years.
Content and form belong apart
Each of our websites consists of two parts: data files holding every sentence of the site, and a generator that builds finished HTML pages from them. To change a text, you change a content file — no HTML, no template, no builder. To change the design, you never touch a sentence.
That separation sounds academic but decides how years play out: content survives every redesign because it was never woven into one. And a new product does not start from zero — it inherits the generator, along with everything it has learned.
What the visitor gets out of it
What ships is a finished file. No server assembles the page on request, no database is queried, no framework boots in the browser. A page of this house weighs around thirty kilobytes and needs three files — many modern pages load a hundred times that before the first sentence is readable.
Finished files have a second property you only come to value when something breaks: they barely can.
Finished files have a second property you only come to value when something breaks: they barely can. There is no database filling up, no dependency acquiring a vulnerability overnight, no module refusing service after an update. What worked yesterday works tomorrow.
The generator checks before it builds
The real gain lies in the build step itself: it is where checking happens. A missing required field, a dead link, a missing translation, a malformed colour value — the build stops and names the error before anything ships. A second check then decides whether the result may be published at all.
In a site builder, nobody checks any of this. There, you learn about the dead link when a visitor finds it.
Where the limit runs
Static does not mean rigid: calculators, filters and search run as JavaScript in the visitor's browser — where the inputs already are and ought to stay. The limit runs at real accounts, payments, collaboratively edited data; those genuinely want an application server. For everything short of that: the most boring technology that solves the task is the best one — fastest, cheapest to run, and still readable in ten years.
Next
This is how we work — and what comes of it.
What this text describes sits inside every product under this roof. Looking beats reading on.
Exactly this is inside:
More articles
Citizenship test in Germany: how many questions, how many right?
33 questions, 60 minutes, a pass from 17 correct answers. What sits behind these three numbers, where the questions come from — and why the whole test can be learned in advance.
Read the articleGerman recreational boat licence (sea): questions and pass marks
30 of 285 questions, 60 minutes, two parts scored separately. Why the spread of your mistakes matters more than their number — and what comes on top of the theory exam.
Read the articleThe English simple present, explained for German speakers
The basic present tense in English has exactly one trap: the third person singular. When the simple present is used, how questions and negatives are built — and why the -s feels so illogical.
Read the article
