</developer>
Credits, philosophy & the flat HTML dogma behind this site
// What is this?
OMAD.dk is a static informational website about the One Meal A Day lifestyle. It is built as a collection of flat, hand-written HTML files — no database, no server-side rendering, no content management system, no JavaScript framework. Just the raw fundamentals of the web.
Every page you see is a single .html file
served directly to your browser. What you receive is
what was written. There is no compilation step, no
hydration phase, no virtual DOM diffing. The entire site
could run from a USB stick, a Raspberry Pi, or a free
static host — and it would be exactly the same.
$ tree omad-dk/ . ├── index.html ├── robots.txt ├── sitemap.xml ├── css/ │ └── style.css ├── js/ │ └── main.js └── pages/ ├── hvad-er-omad.html ├── fordele.html ├── kom-i-gang.html ├── opskrifter.html ├── faq.html ├── ugeplan.html ├── avanceret.html └── developer.html <-- you are here
// How — The Flat HTML Dogma
This site follows a deliberate set of constraints we call the Flat HTML Dogma — a philosophy of building for the web using only its native primitives. Not out of ignorance of modern tooling, but as a conscious rejection of unnecessary complexity.
- No frameworks. No React, no Vue, no Svelte, no Angular. The browser already knows how to render HTML. We let it do its job.
- No build step. No Webpack, no Vite, no Parcel, no transpilation. The source code is the production code. What you edit is what gets deployed.
- No CMS. No WordPress, no headless API, no database. Content lives in the HTML files themselves — version-controlled, diffable, and permanent.
-
No dependencies. Zero
node_modules. Zeropackage.json. Zero supply chain attack surface. The site depends on exactly one thing: the browser. - No client-side routing. Every page is a real URL backed by a real file. The browser's navigation works natively. Back buttons, bookmarks, and deep links just work — as they always have.
- Minimal JavaScript. JS is used only for progressive enhancement — hamburger menu toggle, FAQ accordions, active tab highlighting. The site is fully functional with JavaScript disabled.
- One stylesheet. A single CSS file handles all styling. No CSS-in-JS, no utility-class sprawl, no preprocessor. Readable, scannable, maintainable.
- Semantic HTML. Proper heading hierarchy, landmark elements, ARIA labels, and structured data. Accessibility and SEO are built into the markup, not bolted on as an afterthought.
- Fast by default. No JavaScript bundles to parse. No layout shifts from lazy-hydration. No loading spinners. The first meaningful paint is the only paint.
- Immortal by design. This site would have worked in 2005 and it will work in 2035. The technologies it uses — HTML, CSS, a dash of vanilla JS — are the most stable platform in computing history.
# The entire deploy process: $ rsync -avz --delete ./omad-dk/ server:/var/www/omad.dk/ # That's it. That's the pipeline.
// The stack
Every technology choice was made deliberately. Here's the full stack — you can count the entries on one hand:
| Layer | Technology | Role |
|---|---|---|
| Markup | HTML5 | Structure, content, semantics |
| Style | CSS3 | Layout, responsive design, theming |
| Script | Vanilla JS | Mobile nav, FAQ accordion, active tab detection |
| SEO | JSON-LD | Structured data for search engines |
| VCS | Git | Version control, history, collaboration |
| Host | Static server | Serves files. Nothing more, nothing less. |
// But why?
Because the web doesn't need to be complicated. A content site with eight pages does not need a CI/CD pipeline, a headless CMS, a CDN-edge-rendered React app with incremental static regeneration. It needs HTML files on a server.
The modern web development ecosystem has normalised an extraordinary amount of accidental complexity. Megabytes of JavaScript to render text. Build tools that take longer to configure than the site takes to write. Dependencies that break overnight because someone mass-updated a package half the internet depends on.
Flat HTML is a reminder that the web's original architecture — documents linked together — was never broken. It didn't need fixing. For sites like this one, it's still the best tool for the job.
# A modern "hello world" in 2025: $ npx create-react-app hello-world # Installing 1,394 packages... # node_modules: 289 MB # Time: 47 seconds # This entire website: $ du -sh omad-dk/ # ~120 KB total. Ships in milliseconds.
// Who
Built by a human with an AI pair-programmer.
Content, structure and design direction by the site
owner.
Code generation, SEO optimisation and structured
data assisted by
Claude
(Anthropic) via
Zed
editor.
No code was mass-generated blindly. Every line was reviewed, understood, and intentionally committed. The AI served as a tool — like a compiler or a linter — not as the author.
/** * OMAD.dk * * Language .... Danish (da) * Type ........ Static HTML site * Pages ....... 9 (including this one) * Framework ... None * Build tool .. None * Package mgr . None * Database .... None * JS deps ..... 0 * CSS deps .... 0 * License ..... All rights reserved * Year ........ 2025 */