Static Site Generation (SSG) is een webtechnologie waarbij alle pagina's van een website vooraf worden gegenereerd als statische HTML-bestanden tijdens het buildproces, in plaats van dynamisch te worden aangemaakt bij elke gebruikersaanvraag. Dit resulteert in extreem snelle laadtijden, betere beveiliging en lagere hostingkosten.
Bij SSG worden content en data tijdens de buildtijd samengevoegd met templates om complete HTML-pagina's te genereren. Deze vooraf gegenereerde pagina's kunnen vervolgens via een Content Delivery Network (CDN) wereldwijd worden gedistribueerd, wat zorgt voor optimale performance en schaalbaarheid.
Hoe werkt Static Site Generation?
Het proces van Static Site Generation bestaat uit verschillende stappen:
- Content verzameling: Data wordt opgehaald uit bronnen zoals CMS-systemen, databases, API's of markdown-bestanden
- Build proces: Een static site generator combineert content met templates en voert transformaties uit
- HTML generatie: Volledige HTML-pagina's worden gegenereerd met alle content, styling en functionaliteit
- Deployment: De statische bestanden worden geüpload naar een hosting platform of CDN
- Serving: Bezoekers ontvangen direct de vooraf gegenereerde HTML zonder server-side processing
Verschil met andere rendering methoden
SSG onderscheidt zich van andere webtechnologieën op belangrijke punten:
- Versus Server-Side Rendering (SSR): Bij SSR worden pagina's bij elke aanvraag gegenereerd, terwijl SSG dit eenmalig tijdens de build doet
- Versus Client-Side Rendering (CSR): CSR laadt eerst JavaScript en bouwt dan de pagina op, SSG levert direct complete HTML
- Versus traditionele CMS: Traditionele systemen genereren dynamisch content per request, SSG doet dit vooraf
Populaire Static Site Generators
Er zijn verschillende tools beschikbaar voor Static Site Generation:
- Next.js: React-gebaseerd framework met uitgebreide SSG-mogelijkheden en Incremental Static Regeneration
- Gatsby: React-framework geoptimaliseerd voor performance met GraphQL data layer
- Hugo: Extreem snelle generator gebouwd in Go, ideaal voor grote websites
- Eleventy (11ty): Flexibele JavaScript-generator met ondersteuning voor meerdere template talen
- Astro: Moderne generator met component islands en minimale JavaScript
- Jekyll: Ruby-gebaseerde generator, populair voor GitHub Pages
