%% date:: [[2021-02-28]], [[2024-01-22]] parent:: %% # [[Static site generator]] A static site generator is code that takes content, usually in a [[Markup languages|markup language]], and converts it into a publishing format such as [[XML]]. The generated code can then be uploaded to a web server. The point of a static site generator is to [[Principle of Atomicity]] two functions of a web server: generating content and serving it. With a static site generator, content is generated up front, leaving the web server with nothing to do but serve it. This approach significantly reduces the resources a web server needs, compared to a situation where a web server needs to dynamically generate content as needed. Static site generators are also more performant as there is less processing required to turn content into a website. ## Examples - [[Hugo]] - [site](https://gohugo.io/): My static site generator for [my site](https://nicole.to/site). Currently used by [[Grafana Labs (company)]] for marketing site and docs. - [[Gatsby]] - [site](https://www.gatsbyjs.com/): Previously used by [[k6 (Company)]] for marketing site and documentation - [[Jekyll]] - [site](https://jekyllrb.com/) - [[Eleventy]] - [site](https://www.11ty.dev/) - [[Sphinx]] - [site](https://www.sphinx-doc.org/en/master/) and [repo](https://github.com/sphinx-doc/sphinx) - [[AsciiDoc]] - [site](https://asciidoc.org/) - [[Middleman]] - [site](https://middlemanapp.com/) - [[Metalsmith]] - [site](https://metalsmith.io/) - [[MkDocs]] - [site](https://www.mkdocs.org/) - [[Hexo]] - [site](https://hexo.io/) - [[Obsidian Publish]] - [site](https://publish.obsidian.md): What I use to publish [my notes](https://notes.nicolevanderhoeven.com). - [[Quartz]] - [site](https://quartz.jzhao.xyz/): What I use to [write my book in public](https://doingitinpublic.com).