Statically generated sites
Build a research website to plain files so it keeps working long after its tooling, its budget, and its maintainer have moved on.
Description
Research websites tend to die quietly: the grant ends, the engineer who built it moves on, and eventually something on the server breaks with nobody left to fix it. The patterns in this cluster share one answer: render the site ahead of time, serve it as plain files with nothing running behind them, and let automation rather than someone’s memory keep it working. The approach stretches across the whole range, from a basic documentation site for a run-of-the-mill research project through to a heavyweight build with structured, well-described data and automated CI/CD maintained by research software engineers. Same architecture, just scaled to the job.
Patterns in this cluster
- Statically Generated Site architectural
A research website needs to keep working and stay trustworthy for years after its build tooling, its budget, and its original maintainer have moved on.
Applies when
- content changes at human pace, not per request
- something can host static files
- the site does not depend on per-request server logic
-
Site content needs to stay reusable and trustworthy across many consumers, not just look right on the one page that renders it.
Applies when
- the content has recurring structure more than one thing needs to read
- there is a real downstream consumer beyond the website
- non-coding authors need comprehensible validation feedback
- the team can agree what each field means
- Git-Native Continuous Deployment implementation
A static site needs to publish itself on every change without anyone tending a server.
Applies when
- you have a git host with continuous integration (CI)
- the site builds from sources with a single command into a static output directory
- someone can own a CI configuration long-term
- your institution permits the chosen platform
- Client-Side Search for a Static Site implementation
A static site has no server to run a search query, yet readers still expect to search it.
Applies when
- the site is already built to static files
- readers need to find content by searching, not only by browsing a menu
- the searchable content is known at build time
- Build-Time Validation process
Content quality needs to hold without depending on whether a busy person remembered to check before publishing.
Applies when
- there is a build step and changes arrive through a reviewable channel such as pull requests
- more than one person contributes, possibly including non-coders
- someone can own the checks
- the team can agree what "good enough to publish" means