An introduction to Static Site Generators

Let's build a (content) website

Option 1 : static site starting from scratch

  • Easy to get started


  • Good performance out of the box


  • Easy to deploy / host


  • Good to learn the fundamentals
  • Time consuming


  • Not a great Developer Experience (DX)


  • Hard to scale / maintain


  • How do you manage your content ?

Option 2 : use a "traditional" CMS


web server

content editor

database server

  • Easy to get a "full" website up quickly


  • Nice editing experience for your content


  • Community / ecosystem to help you
  • Deployment & hosting can be complex


  • Security can be an issue


  • Need to code backend + frontend parts


  • You just wanted a banana, but what you got was a gorilla holding the banana and the entire jungle

Option 3 : use a platform

  • No coding required !


  • Same advantages as the "classic CMS"
  • (Very) limited customizability


  • You don't own your content

Option 4 : use a static site generator


web server

content editor

database server


rebuild site

  • Great performance


  • Good security


  • Easy deployment & hosting


  • Good DX (templating + clean separation of code and content)
  • Poor content-editing experience out of the box


  • Dynamic functionalities (e.g. Auth) can be complex to implement

Not (just) for "simple" sites !