De laatste jaren zijn statische site generators (SSG’s) sterk in opkomst bij developers vanwege hun eenvoud, snelheid en veiligheidsvoordelen. Ze worden vaak gebruikt voor blogs, documentatie, portfolio’s en e-commercesites.

In dit artikel bekijken we verschillende statische sitegenerators die gebruik maken van Svelte en bespreken we waarom ze een gamechanger kunnen zijn voor je volgende webontwikkelingsprojecten.

Bekijk onze videogids over de top 3 statische sitegenerators van Svelte:

Wat is een Svelte statische sitegenerator?

Een statische sitegenerator is een tool dat een website genereert die bestaat uit statische HTML, CSS en JavaScript bestanden.

Svelte is een modern JavaScript framework dat onder developers veel aandacht heeft gekregen vanwege zijn unieke benadering van het bouwen van webapplicaties.

Frontend bibliotheken en frameworks ervaren ranking
Frontend bibliotheken en frameworks (Bron: StateofJS)

Het verschilt van andere JavaScript frameworks zoals React en Vue omdat het code compileert tijdens het bouwen in plaats van tijdens de runtime.

Zoals je je kunt voorstellen, genereert een statische site generator die Svelte gebruikt alle benodigde HTML, CSS en JavaScript bestanden tijdens het bouwen – dit maakt het voor developers mogelijk om snelle en efficiënte websites te maken die gemakkelijk te onderhouden en bij te werken zijn.

Voordelen en use cases van statische sitegenerators die Svelte gebruiken

Er zijn verschillende redenen waarom developers een Svelte SSG gebruiken voor hun webontwikkelingsprojecten. Hier zijn enkele van de belangrijkste voordelen:

  1. Snelheid: omdat er geen server nodig is om on the fly pagina’s te genereren, kunnen statische sites vrijwel direct geladen worden – vooral voor sites als e-commerce of nieuwswebsites.
  2. Beveiliging: er is geen database of serverside code die gehackt kan worden, waardoor het een goede keuze is voor sites die gevoelige gegevens of transacties verwerken.
  3. Schaalbaarheid: omdat er geen serverside code is, zijn er geen knelpunten of beperkingen om je zorgen over te maken.
  4. Ervaring voor developers: met features als hot module reloading, serverside rendering en automatische code splitsing – is het voor developers gemakkelijker om hun sites te bouwen, te testen en te deployen.

Use cases voor Svelte statische sitegenerators

Svelte SSG’s kunnen worden gebruikt voor een breed scala aan webontwikkelingsprojecten. Hier zijn enkele use cases met specifieke voorbeelden:

  1. Persoonlijke blogs: SSG’s zoals SvelteKit en Elder.js zijn geweldig voor het bouwen van persoonlijke blogs. Ze bieden ingebouwde ondersteuning voor markdown en code syntax highlighting, waardoor het gemakkelijk is om blogberichten te maken en te publiceren.
  2. Zakelijke websites: Astro is zeer geschikt voor het bouwen van zakelijke websites, omdat het features biedt als serverside rendering, automatische pagina generatie en dynamische routes.
  3. E-commercesites: Svelte SSG’s kunnen worden gebruikt om snelle en efficiënte e-commercesites te bouwen omdat het een geweldige gebruikerservaring biedt.
  4. Documentatiesites: Svelte SSG’s zijn ook ideaal voor het bouwen van documentatiesites.
  5. Interactieve webapplicaties: met Astro kun je interactieve webapplicaties bouwen.

Top 3 Svelte statische sitegenerators

Voordat we enkele van deze statische site generators bespreken, moet je begrijpen dat SSG’s altijd statische bestanden genereren, die je online moet hosten om je gebruikers toegang te geven tot de website.

Laten we nu enkele beste statische sitegenerators bespreken die Svelte gebruiken en wat hen onderscheidt.

1. SvelteKit

De SvelteKit startpagina.
SvelteKit

SvelteKit is een populaire SSG die is gebouwd bovenop het Svelte framework en gebruikmaakt van de unieke features van Svelte, zoals:

  • Compiler gebaseerde aanpak
  • Reactieve updates
  • Op componenten gebaseerde architectuur
  • Kleinere bundelgroottes
  • Gemakkelijk te leren

Het is gebouwd door het Svelte team en wordt algemeen beschouwd als een van de beste SSG’s die Svelte gebruiken om de volgende redenen:

  • SvelteKit heeft ingebouwde serverloze functies, waardoor je gemakkelijk backendfunctionaliteit aan je website kunt toevoegen. Je zou bijvoorbeeld een serverloze functie kunnen gebruiken om formulierinzendingen af te handelen, betalingen te verwerken, of interactie met een database.
  • SvelteKit splitst je applicatie automatisch in code, wat betekent dat het alleen de code laadt die nodig is voor elke pagina. Dit resulteert in snellere laadtijden en betere prestaties.
  • SvelteKit kan gegevens voor een pagina vooraf ophalen voordat hij wordt geladen, wat betekent dat de pagina sneller kan worden gerenderd.
  • SvelteKit bevat ingebouwde routing, wat het gemakkelijk maakt om complexe applicaties met meerdere pagina’s te maken.

SvelteKit wordt gebruikt door veel populaire websites, waaronder Yarn en Brilliant. Als je op zoek bent naar een Svelte SSG, dan is SvelteKit zeker het proberen waard. Bekijk zeker hun officiële documentatie die uitgebreide documentatie biedt over hoe je aan de slag kunt gaan en meer.

Zo deploy je een SvelteKit statische site op Kinsta

Je kunt een SvelteKit statische site opzetten op Kinsta door de SvelteKit SSG adapter te gebruiken. Dit doe je door eerst de adapter te installeren met dit commando:

npm i -D @sveltejs/adapter-static

Voeg vervolgens de adapter toe aan je svelte.config.js:

// svelte.config.js

import adapter from '@sveltejs/adapter-static';

Voeg tot slot de prerender optie toe aan je root layout:

// src/routes/+layout.js

export const prerender = true;

2. Astro

De Astro startpagina
Astro

Astro is een moderne statische sitegenerator die een flexibele en efficiënte manier biedt om statische websites te bouwen. Het is ontworpen om snel, licht en gemakkelijk te gebruiken, waardoor het een uitstekende keuze is voor developers die krachtige en gemakkelijk te onderhouden websites willen bouwen.

Astro is ontworpen rond een component gedreven ontwikkelingsmodel, wat het gemakkelijk maakt om herbruikbare componenten te maken en hun state en gegevensstroom te beheren. Je hebt ook de mogelijkheid om je favoriete frontendframeworks zoals Svelte, React en Vue te gebruiken om componenten te maken die je gemakkelijk kunt integreren in Astro pagina’s en templates.

Het maakt ook gebruik van de Islandarchitectuur, een unieke aanpak die pagina’s en componenten scheidt in geïsoleerde “islands” van code (CSS, JavaScript en HTML).

Astro geeft je ook toegang tot veel integraties, zoals:

  • MDX integratie
  • Integratie van afbeeldingsoptimalisatie
  • Tailwind integratie
  • Sitemap integratie

Astro wordt gebruikt door veel populaire websites zoals The Guardian Engineering. Je kunt andere populaire platforms die ze gebruiken bekijken op hun showcase pagina.

De documentatie voor Astro geeft gedetailleerde informatie over het gebruik van het framework, inclusief de integratie met het Svelte framework.

Zo deploy je een Astro statische site op Kinsta

Astro snelstartvoorbeeld
Astro snelstart

Je kunt eenvoudig een Astro website opzetten door Kinsta’s hello-world quickstart voorbeeld te forken op GitHub en het vervolgens te deployen naar Kinsta’s Statische Site Hosting.

3. Elder.js

De startpagina van Elder.js
Elder.js

Elder.js is een statische sitegenerator, gebouwd met SEO in het achterhoofd. Een klein team van SEO’ers en developers heeft het van de grond af aan ontworpen om de unieke uitdagingen en complexiteiten op te lossen van het bouwen van toonaangevende SEO sites met 100k+ pagina’s.

Een van de belangrijkste features van Elder.js is de mogelijkheid om naadloos samen te werken met Svelte, waardoor developers de mogelijkheid hebben om herbruikbare UI componenten te maken en die voor meerdere pagina’s of zelfs projecten te gebruiken.

Naast de integratie met Svelte heeft Elder.js nog andere interessante features:

  • Elder.js gebruikt een sterk geoptimaliseerd bouwproces dat zoveel mogelijk CPU cores gebruikt, waardoor het ongelooflijk snel en efficiënt is. Volgens hun documentatie kan het bijvoorbeeld gemakkelijk een data-intensieve site van 18.000 pagina’s genereren in slechts 8 minuten met behulp van slechts een VM met 4 cores.
  • Met Elder.js hebben developers volledige controle over hoe ze gegevens ophalen, voorbereiden en manipuleren voordat ze die naar hun Svelte template sturen.
  • Elder.js ondersteunt een reeks officiële en community plugins die aan een site kunnen worden toegevoegd om de functionaliteit ervan uit te breiden.
  • Elder.js ondersteunt shortcodes, dat zijn slimme placeholders die kunnen worden gebruikt om content toekomstbestendig te maken, of die nu in een CMS of in statische bestanden staat. Deze shortcodes kunnen asynchroon zijn, waardoor het gemakkelijk is om dynamische content op een site op te nemen.
  • Met Elder.js kunnen developers alleen de delen van de client hydrateren die interactief moeten zijn, waardoor de payload kleiner wordt en de site beter presteert.

Bekijk de officiële Elder.js documentatie voor meer informatie.

Zo deploy je een Elder.js statische site op Kinsta

Snelstartvoorbeeld van Elder.js
Elder.js snelstart

Je kunt een statische Elder.js-site opzetten op Kinsta door ons quickstart voorbeeld te forken en het te deployen naar onze Statische Site Hosting.

Hoe kies je de beste Svelte statische sitegenerator voor je website?

Als het gaat om het kiezen van de beste Svelte SSG, zijn er een paar dingen waar je rekening mee moet houden:

Projecteisen

Dit is waar je eerst aan moet denken voordat je een Svelte SSG kiest of een beslissing neemt.

Vraag jezelf af wat voor soort website je wilt bouwen, hoe complex hij zal zijn, en welke features en functionaliteit hij nodig heeft. Dit zal je helpen je opties te beperken.

Ervaring als developer

Zoek altijd naar een SSG met features die een goede developerervaring bieden, zoals een ingebouwde ontwikkelserver, hot reloading en duidelijke documentatie. Dit maakt het ontwikkelingsproces naadloos en efficiënt, zodat je je website sneller en met minder frustratie kunt bouwen.

Ondersteuning door de community

Tot slot is het belangrijk om te kijken naar de mate van ondersteuning door de community. Zoek een Svelte SSG met een betrokken community die hulp en ondersteuning kan bieden wanneer dat nodig is. Zo kun je antwoord krijgen op je vragen en problemen oplossen die zich voordoen tijdens het bouwen van je website.

Deploy je statische site gratis met Kinsta Statische Site Hosting

Met Kinsta kun je je statische website hosten via Statische Site Hosting, een oplossing die je hoge prestaties, betrouwbaarheid en veiligheid biedt.

Om te beginnen push je de broncode van je statische website naar een Git repository (BitbucketGitHub, of GitLab). Zodra je repo klaar is, volg je deze stappen om je statische site te deployen naar Kinsta:

  1. Log in of maak een account aan om je MyKinsta dashboard te bekijken.
  2. Autoriseer Kinsta met je Git provider.
  3. Klik op Statische sites op de linker zijbalk, klik dan op Site toevoegen.
  4. Selecteer de repository en de branch waarvan je wilt deployen.
  5. Geef je site een unieke naam.
  6. Voeg de Build instellingen toe voor je SSG. Zie de instructies onder elke SSG of bekijk onze documentatie voor meer informatie.
  7. Klik ten slotte op Site maken.

En dat is het! Kinsta deployt je site meteen en geeft de standaard URL weer. Je kunt later een aangepast domein en je eigen SSL certificaat toevoegen.

Build-instellingen voor SvelteKit

  • Build commando: npm run build
  • Node versie: 18.16.0
  • Publish directory: build

Build-instellingen voor Astro

  • Build commando: npm run build
  • Node versie: 18.16.0
  • Publish directory: dist

Build-instellingen voor Elder.js

  • Build commando: npm run build
  • Node versie: 18.16.0
  • Publish directory: public

Als alternatief voor Statische Site Hosting van Kinsta kun je ervoor kiezen om je statische site te deployen met Applicatie Hosting van Kinsta, die meer flexibiliteit biedt bij het hosten, een breder scala aan voordelen en toegang tot robuustere features. Bijvoorbeeld schaalbaarheid, aangepaste implementatie met behulp van een Dockerfile en uitgebreide analyses met real-time en historische gegevens.

Samenvatting

Static sitegenerators (SSG’s) worden steeds populairder vanwege hun snelheid, eenvoud en verbeterde beveiliging. Ze zijn vooral nuttig voor het bouwen van websites die geen dynamische content of functionaliteit van een server nodig hebben.

Het gebruik van op Svelte gebaseerde SSG’s kan je nog meer voordelen opleveren, omdat het extra mogelijkheden biedt van het Svelte framework, waaronder een kleinere bundelgrootte en snelle rendering. Daardoor zijn op Svelte gebaseerde SSG’s een uitstekende keuze voor het maken van statische sites die snel laden en efficiënt werken.

Overweeg je een statische sitegenerator die Svelte gebruikt uit te proberen voor je volgende project? Heb je er ooit een gebruikt? Laat het ons weten in de comments!

Joel Olawanle Kinsta

Joel is a Frontend developer working at Kinsta as a Technical Editor. He is a passionate teacher with love for open source and has written over 200 technical articles majorly around JavaScript and it's frameworks.