What Static-first Means

Static-first means producing the pages a visitor needs before the request arrives. Start with files and generated assets when those are enough; add runtime services only when a feature requires them.

It does not mean avoiding JavaScript. A static page can still contain browser interactions, such as search, without requiring an application server for each visit.

Build Time Versus Request Time

At build time, content files are read, frontmatter is validated, and pages are generated. A deployment publishes the resulting HTML, CSS, JavaScript, and other assets.

At request time, the host serves those files. It does not need to query a content database or render a new personalized page for every visitor. Changes to the source become public through another build and deployment.

LogicBoat is a concrete example: MDX feeds static article routes, and Pagefind indexes the exported HTML. A browser loads the generated search assets when needed. The Foundation Build documents the actual implementation and verification.

What This Simplifies

  • Operations: A publication can avoid a database, CMS server, and account system when its readers need public articles.
  • Cost: Static delivery can keep operating costs low by removing those services. Hosting and bandwidth still have costs and limits; static-first does not guarantee a free site.
  • Security surface: Fewer runtime services mean fewer application endpoints and credentials to manage. Dependencies, deployment access, and browser code still need care.
  • Deployment: The generated artifact can be inspected before release. Its content is tied to the source revision used to build it.

Tradeoffs and Poor Fits

A rebuild is appropriate for articles that change through an editorial workflow. It is less appropriate for frequently changing server data that must be current at request time.

Per-user dashboards, protected account data, authentication, and substantial runtime personalization require additional systems. Browser interactions alone cannot establish secure authorization. A live booking system also needs a reliable way to coordinate current availability and writes; exporting a page does not provide that behavior.

For those products, choose a runtime architecture that matches the requirement rather than forcing everything into static files. A public knowledge section may still use static delivery alongside a separate application.

Start with the Reader's Need

LogicBoat's current need is to publish readable material and help visitors find it. Files, static routes, and browser search meet that need. The static-first constraint Note explains why each additional moving part should earn its place.