Skip to content
Nederlands
Terug naar de directory

astro.build

200 OK

Hoe Astro content omzet in HTML en selectief interactie toevoegt

Developer ToolsTailwind CSS
Direct antwoord

Astro is zeer geschikt voor contentgedreven websites die bruikbare HTML moeten leveren voordat JavaScript in de browser wordt uitgevoerd. De onderscheidende keuze is selectieve hydration: teams kunnen het grootste deel van een pagina statisch houden en afzonderlijke componenten activeren, hoewel zeer interactieve applicaties mogelijk minder profiteren van die afbakening.

Laatste controle:

Kernbegrippen

  • HTML-first levering: Astro rendert pagina-inhoud als HTML en verstuurt standaard geen client-side JavaScript.

  • Selectieve hydration: Alleen componenten die expliciet zijn gemarkeerd voor hydration in de browser ontvangen het JavaScript dat nodig is voor interactie.

  • Onafhankelijke islands: Interactieve componenten worden afzonderlijk gehydrateerd en kunnen laadprioriteiten gebruiken die passen bij het moment waarop bezoekers ze nodig hebben.

  • Meerdere UI-benaderingen: Astro ondersteunt React, Preact, Svelte, Vue, Solid, HTMX, webcomponenten en andere benaderingen.

  • Getypeerde content collections: Content collections organiseren en valideren Markdown-content met typeveiligheid van TypeScript.

  • Geschikt voor contentgedreven sites: Astro sluit het meest direct aan bij sites waar het lezen en doorzoeken van content de dominante gebruikersactiviteiten zijn.

Compare the subject with other published sites in the same category.

All alternatives

Hoe Astro content omzet in HTML en selectief interactie toevoegt

Wat is Astro?

Astro is een open-source webframework voor het bouwen van contentgedreven websites. Het rendert pagina-inhoud als HTML en verstuurt standaard geen client-side JavaScript, terwijl ontwikkelaars onafhankelijk gehydrateerde componenten kunnen toevoegen waar interactie in de browser nodig is.

Deze aanpak is geschikt voor blogs, documentatie, marketingsites, portfolio's, landingspagina's, communitysites en contentgedreven e-commerce-ervaringen. Astro kan verschillende vertrouwde UI-frameworks integreren zonder dat de hele pagina een client-gerenderde applicatie hoeft te worden.

Korte samenvatting

  • Primair doel: Contentgedreven websites bouwen rond server-gerenderde HTML.
  • Standaardkosten in de browser: Geen client-side JavaScript, tenzij het project dit expliciet toevoegt.
  • Kernarchitectuur: Interactieve componenten worden geïsoleerde islands binnen verder statische pagina's.
  • Ondersteunde UI-benaderingen: React, Preact, Svelte, Vue, Solid, HTMX, webcomponenten en andere.
  • Contenttools: Content collections organiseren en valideren Markdown met typeveiligheid van TypeScript.
  • Beste toepassing: Sites waar het lezen en doorzoeken van content belangrijker is dan continue status aan de browserzijde.
  • Belangrijkste afweging: Teams moeten bepalen welke componenten JavaScript nodig hebben en wanneer deze moeten laden.

Welk probleem probeert Astro op te lossen?

Contentwebsites gebruiken vaak applicatiegerichte frontendarchitecturen, zelfs wanneer hun pagina's voornamelijk koppen, artikelen, productuitleg, afbeeldingen en links bevatten. Hierdoor kan JavaScript voor een brede componentenstructuur worden verstuurd, hoewel een groot deel van de pagina niet in de browser hoeft te worden uitgevoerd.

Astro vertrekt vanuit een server-first uitgangspunt: content wordt HTML en uitvoering in de browser wordt alleen toegevoegd waar interactie dit vereist. Het leveringsmodel kan daardoor het werkelijke gedrag van de pagina volgen, in plaats van ieder element als onderdeel van één interactieve applicatie te behandelen.

De officiële documentatie beschrijft Astro als contentgedreven, server-first, standaard snel, gebruiksvriendelijk en gericht op ontwikkelaars. Dit zijn ontwerpdoelen en geen garanties, omdat afbeeldingen, scripts van derden, componentcode en implementatiekeuzes nog steeds invloed hebben op de uiteindelijke site.

Wat Astro organiseert voor een contentproject

  • Pagina's waarvan de belangrijkste waarde uit leesbare HTML bestaat.
  • Herbruikbare lay-outs en componenten rond die content.
  • Markdown-content die via collections is georganiseerd.
  • Validatie en TypeScript-bewuste schema's voor collection-items.
  • Optionele interactieve componenten met ondersteunde UI-frameworks.
  • Integraties die worden toegevoegd op basis van de behoeften rond content en levering.

Hoe rendert Astro een pagina?

Astro scheidt statische pagina-inhoud van interactieve browsercomponenten. De server produceert HTML, terwijl componenten die voor hydration zijn gemarkeerd JavaScript ontvangen en interactief worden volgens een door de ontwikkelaar gekozen directive.

Dit verschilt zowel van het omzetten van de volledige pagina in één client-side componentenstructuur als van het publiceren van een volledig statisch document waaraan geen browsergedrag kan worden toegevoegd. Astro neemt een middenpositie in door interactie toe te wijzen aan specifieke delen van een pagina.

Vergelijking van architectuur en rendering

Paginagebied of benadering Initiële uitvoer JavaScript in de browser Interactiegrens Praktische implicatie
Statische Astro-content Server-gerenderde HTML Standaard geen Geen gehydrateerde component Tekst, links en andere statische content blijven bruikbaar zonder componentruntime.
Interactieve Astro-island HTML plus een expliciet gehydrateerde component Geladen voor die component De afzonderlijke island Een menu of zoekfunctie kan interactief worden zonder het omringende artikel te hydrateren.
Meerdere Astro-islands HTML plus afzonderlijk gehydrateerde componenten Geladen volgens de behoeften van iedere island Iedere island wordt onafhankelijk gehydrateerd Teams kunnen belangrijke interactie prioriteren en componenten uitstellen die niet onmiddellijk nodig zijn.
Clientapplicatie voor de hele pagina Applicatiespecifieke shell of HTML Ondersteunt doorgaans een brede clientcomponentenstructuur Een groot deel van de pagina deelt uitvoering aan de browserzijde Dit kan geschikt zijn voor continue interactie, maar kan een applicatiemodel toepassen op content die dit niet nodig heeft.

Deze grenzen garanderen geen bepaald prestatieresultaat. Een grote island kan nog steeds aanzienlijke hoeveelheden code versturen, terwijl zware media en niet-gerelateerde scripts de pagina kunnen vertragen; Astro biedt standaard weinig JavaScript, maar het team blijft verantwoordelijk voor de uiteindelijke ervaring.

Wat is een Astro-island?

Een island is een interactieve UI-component binnen een verder statische pagina. Omringende koppen, alinea's, links en ander niet-interactief materiaal blijven HTML, terwijl de island de browsercode ontvangt die nodig is voor het gedrag ervan.

Islands worden onafhankelijk gehydrateerd, zodat het activeren van één component niet vereist dat iedere andere interactieve component tegelijkertijd wordt geactiveerd. Ondersteunde componentframeworks kunnen naast elkaar bestaan, hoewel het gebruik van meerdere frameworks kan leiden tot meer dubbele runtimecode en grotere onderhoudsvereisten.

Wanneer kan een island worden gehydrateerd?

  • client:load: Geeft prioriteit aan de component wanneer de pagina wordt geladen.
  • client:idle: Stelt hydration uit totdat de browser inactieve tijd heeft.
  • client:visible: Wacht totdat de component de viewport nadert.

Deze directives maken laadprioriteit onderdeel van de plaatsing van componenten. Een bedieningselement dat onmiddellijk nodig is, kan anders worden behandeld dan een interactief element verderop op de pagina. De keuze moet de behoefte van de gebruiker volgen en niet een algemene regel.

Wat islands wel en niet garanderen

Islands helpen een team dit te doen Islands garanderen dit niet
Statische content als HTML behouden Iedere voltooide pagina zal snel zijn
Alleen JavaScript toevoegen aan geselecteerde componenten Gehydrateerde componenten zullen klein zijn
Islands verschillende laadprioriteiten geven Scripts van derden zullen efficiënt zijn
Ondersteunde UI-frameworks gebruiken voor interactieve gebieden Het combineren van frameworks zal geen runtime- of onderhoudskosten hebben
Een content-first paginastructuur behouden Afbeeldingen, lettertypen en andere assets worden automatisch geoptimaliseerd

De nuttige eigenschap is controle. Hydration blijft zichtbaar in het gebruik van componenten, waardoor ontwikkelaars kunnen beoordelen waar JavaScript de pagina binnenkomt en of iedere afhankelijkheid de kosten waard is.

Hoe gaat Astro om met UI-frameworks en content?

Astro ondersteunt React, Preact, Svelte, Vue, Solid, HTMX, webcomponenten en andere UI-benaderingen. Een team kan een vertrouwd componentframework gebruiken voor een island, terwijl het omringende document binnen Astro's model van server-gerenderde pagina's blijft.

Deze flexibiliteit kan geleidelijke invoering ondersteunen of een bestaande investering in componenten behouden, maar maakt het combineren van ieder framework niet automatisch voordelig. Eén consistente primaire benadering is doorgaans eenvoudiger te begrijpen en iedere aanvullende runtime moet een specifiek probleem oplossen.

Content collections vullen dit renderingmodel aan door Markdown en gerelateerde content een georganiseerde, gevalideerde structuur met typeveiligheid van TypeScript te geven. Een publicatie- of documentatieproject kan zijn content behandelen als één samenhangende dataset in plaats van als niet-gerelateerde bestanden.

Onderhouden onderdelen van het ecosysteem

De repository van het framework vermeldt officieel onderhouden packages voor verschillende behoeften:

  • UI-integraties voor React, Preact, Solid, Svelte en Vue.
  • Runtimeondersteuning via de Node-integratie en verschillende deploymentadapters.
  • Content- en publicatietools, waaronder integraties voor MDX, RSS en sitemaps.
  • Scriptgerelateerde integratie via Partytown.

Projecten kunnen met Astro beginnen en integraties toevoegen wanneer de vereisten dit rechtvaardigen. Actuele documentatie en informatie over onderhouden packages moeten installatiekeuzes sturen, omdat beschikbaarheid en compatibiliteit kunnen veranderen.

Voor wie is Astro geschikt?

Astro sluit het beste aan bij projecten waar content als HTML beschikbaar moet zijn en interactie zich in afzonderlijke gebieden bevindt. Het is vooral het evalueren waard wanneer de voornaamste activiteit van gebruikers bestaat uit lezen, browsen, vergelijken of informatie ontdekken.

Een applicatieachtig product kan nog steeds content-first pagina's bevatten, maar het dominante interactiemodel is belangrijk. Als de meeste schermen afhankelijk zijn van gedeelde clientstatus en continue updates in de browser, kunnen islandgrenzen minder waarde bieden of meer architectuurkeuzes vereisen.

Richtlijnen voor geschiktheid en ongeschiktheid

Astro is het overwegen waard wanneer Evalueer andere benaderingen zorgvuldig wanneer
Het project een blog, documentatiesite, portfolio, landingspagina, marketingsite, communitysite of contentgedreven commerce-ervaring is. De meeste schermen zich gedragen als een continu interactieve browserapplicatie.
Belangrijke content als HTML moet binnenkomen zonder op een clientruntime te wachten. Bijna ieder paginagebied hydration en gedeelde status aan de browserzijde vereist.
Interactiviteit in duidelijke componenten kan worden verdeeld. Interactie moeilijk in onafhankelijke gebieden is te scheiden.
Het team ondersteunde UI-componenten selectief wil hergebruiken. Het team verwacht dat het combineren van frameworks moeiteloos of kosteloos is.
Organisatie, validatie en typeveiligheid van Markdown waardevol zijn. Het project weinig content heeft en geen betekenisvol voordeel uit content collections haalt.

Deze richtlijnen zijn een architectuurfilter en geen oordeel. De beste evaluatie gebruikt één representatieve pagina met echte content en de meest veeleisende interactie die in productie wordt verwacht.

Wat zijn de belangrijkste afwegingen van Astro?

Astro's voornaamste voordeel en ontwerplast komen voort uit dezelfde keuze: JavaScript in de browser is selectief. Teams krijgen controle over hydration, maar moeten zinvolle componentgrenzen en laadprioriteiten bepalen.

Voordelen die door de architectuur worden ondersteund

  • Statische content blijft server-gerenderde HTML.
  • JavaScript is opt-in voor componenten die browsergedrag nodig hebben.
  • Islands kunnen onafhankelijk worden gehydrateerd.
  • Laadprioriteit kan aansluiten bij het moment waarop een interactie nuttig wordt.
  • Ondersteunde UI-frameworks kunnen worden gebruikt zonder de volledige pagina te beheren.
  • Content collections bieden organisatie, validatie en typeveiligheid van TypeScript.

Kosten en beslissingen om rekening mee te houden

  • Ontwikkelaars moeten vaststellen welke componenten werkelijk hydration vereisen.
  • Slecht gekozen directives kunnen code eerder of later laden dan gebruikers die nodig hebben.
  • Grote islands kunnen het voordeel van selectieve hydration verminderen.
  • Meerdere UI-frameworks kunnen dubbele runtimecode en extra onderhoud introduceren.
  • Scripts van derden en te grote media blijven aandachtspunten voor prestaties.
  • Producten met veel interactie moeten bepalen of islands bij hun statusmodel passen.

Astro geeft de voorkeur aan doelbewuste compositie. Het verwijdert automatisch client-side JavaScript uit het uitgangspunt, maar neemt de noodzaak niet weg om afhankelijkheden, assets, toegankelijkheid of het werkelijke paginagedrag te beoordelen.

Hoe moet een team Astro evalueren?

Een bruikbare evaluatie moet de moeilijkste content- en interactievereisten van het project nabootsen. Een minimale demonstratie kan bewijzen dat Astro werkt, maar kan niet aantonen of de architectuur bij de werkelijke auteursworkflow of het browsergedrag past.

Evaluatiechecklist

  1. Kies een representatieve pagina. Gebruik echte koppen, hoofdtekst, navigatie, afbeeldingen en links in plaats van tijdelijke aanduidingen.
  2. Identificeer statische gebieden. Markeer welke delen HTML kunnen blijven zonder componentruntime aan de browserzijde.
  3. Selecteer de moeilijkste interactie. Neem de meest veeleisende component op die redelijkerwijs wordt verwacht.
  4. Definieer islandgrenzen. Bepaal of interactieve gebieden onafhankelijk kunnen worden gehydrateerd zonder onhandige statuscoördinatie.
  5. Wijs hydrationprioriteiten toe. Test of client:load, client:idle of client:visible past bij het moment waarop iedere component nuttig wordt.
  6. Beoordeel het frameworkgebruik. Bevestig dat iedere UI-integratie een concrete behoefte oplost en noteer dubbele runtimekosten.
  7. Test het contentmodel. Maak een representatieve collection en controleer of validatie en TypeScript-typen de redactionele workflow ondersteunen.
  8. Inspecteer de geleverde uitvoer. Bevestig dat essentiële content als HTML aanwezig is en identificeer JavaScript dat door gehydrateerde componenten wordt toegevoegd.
  9. Test werkelijke beperkingen. Neem verwachte media, scripts van derden, navigatie en deploymentvereisten op.
  10. Vergelijk de onderhoudbaarheid. Vraag of de grens tussen content en interactie duidelijk is voor het team dat de site beheert.

De beslissing moet op dat prototype berusten. Gedocumenteerde standaardinstellingen leggen Astro's bedoeling uit, terwijl een representatieve implementatie laat zien of deze aansluiten bij de werkelijke behoeften van het project rond content, interactie en onderhoud.

Hoe is Astro ontstaan en hoe wordt het bestuurd?

Astro werd in juni 2021 openbaar geïntroduceerd via een officiële publicatie van Fred Schott en Nate Moore. De bron noemt beiden als de auteurs die het project introduceerden en ondersteunt niet dat een van hen als enige oprichter wordt aangeduid.

Een officiële aankondiging over het bestuur in 2025 maakte Astro's Technical Steering Committee bekend. Op die waarnemingsdatum werd Matt Kane genoemd als leider van het frameworkteam en Sarah Rainsberger als leider van het documentatieteam; dit zijn gedateerde feiten, omdat leiderschap en commissielidmaatschap kunnen veranderen.

Feiten over het project en de community

  • Juni 2021: Fred Schott en Nate Moore schreven Astro's officiële introductie.
  • 2025: Astro kondigde zijn Technical Steering Committee en gedateerde teamrollen aan.
  • Licentie: De onderhouden repository van het framework vermeldt Astro als gratis open-sourcesoftware onder de MIT-licentie.
  • Ondersteuning: Actueel officieel releasemateriaal verwijst voor hulp en feedback naar Astro's Discord-community.
  • Deelname: Het project verwijst bijdragers en projectdeelname naar GitHub.
  • Aan de slag: De onderhouden README beveelt npm create astro@latest aan; voor handmatige installatie wordt npm install astro gebruikt.

Bestuur verklaart hoe het open-sourceproject verantwoordelijkheden organiseert, terwijl rendering, contenttools en interactiegrenzen bepalen of het technisch geschikt is.

Waar staat astro.build voor?

astro.build is de officiële website van Astro, terwijl Astro het framework het hier beschreven onderwerp is. De onderhouden repository van de website vermeldt dat de site met Astro is gebouwd, waardoor het een relevant voorbeeld uit eerste hand is zonder dat de onderhoudsdetails onderdeel worden van de definitie van het framework.

De onderhouden repository van het framework is de sterkere referentie voor ondersteunde packages, installatiemethoden, licenties, community- en bijdrage-informatie. Astro's documentatie blijft de primaire referentie voor het server-first model, de focus op content, de islands-architectuur en de hydration-directives.

Conclusie

Astro's uitgangspunt is duidelijk: render content als HTML en voeg vervolgens alleen JavaScript voor de browser toe aan componenten die interactie nodig hebben. Het is aantrekkelijk voor contentgedreven sites met scheidbare interactieve gebieden en minder vanzelfsprekend voor producten waarvan de interfaces afhankelijk zijn van continue status aan de clientzijde.

Ga er niet van uit dat de standaardinstelling iedere implementatie snel maakt. Bouw een realistische pagina, inspecteer de HTML en gehydrateerde componenten, test de contentworkflow en bevestig dat de islandgrenzen begrijpelijk blijven terwijl het project groeit.

Een geslaagde reactie is geen veiligheidsgarantie. Metingen beschrijven één waarneming op een bepaald moment.

Primaire bronnen

  1. 01Officiële website van Astro (opent in een nieuw tabblad)
  2. 02Astro-documentatie: Waarom Astro? (opent in een nieuw tabblad)
  3. 03Astro-documentatie: Islands-architectuur (opent in een nieuw tabblad)
  4. 04README van de onderhouden frameworkrepository van Astro (opent in een nieuw tabblad)
  5. 05Onderhouden frameworkrepository van Astro (opent in een nieuw tabblad)
  6. 06Officiële websitestrepository van astro.build (opent in een nieuw tabblad)
  7. 07Introductie van Astro (opent in een nieuw tabblad)
  8. 08Aankondiging van Astro's Technical Steering Committee voor 2025 (opent in een nieuw tabblad)
  9. 09Officieel releasemateriaal van Astro 7 (opent in een nieuw tabblad)

Veelgestelde vragen

Praktische antwoorden over het product en de werking ervan.

Waarvoor wordt Astro gebruikt?

Astro is een webframework voor contentgedreven websites, zoals blogs, documentatie, marketingsites, portfolio's, landingspagina's, communitysites en e-commerce-ervaringen. Het legt de nadruk op server-gerenderde HTML en voegt alleen client-side JavaScript toe waar componenten expliciet worden gehydrateerd.

Verstuurt Astro JavaScript naar iedere pagina?

Nee. Astro verstuurt standaard geen client-side JavaScript. Een project kan nog steeds scripts en interactieve componenten toevoegen, dus de uiteindelijke hoeveelheid hangt af van welke componenten worden gehydrateerd en welke andere browsercode het project bevat.

Wat is een island in Astro en wanneer moet deze worden gehydrateerd?

Een island is een onafhankelijk gehydrateerde interactieve component binnen een verder statische pagina. Astro biedt `client:load` voor laden met prioriteit, `client:idle` voor uitgesteld werk en `client:visible` voor componenten die kunnen wachten totdat ze de viewport naderen.

Kan Astro componenten van React, Vue of Svelte gebruiken?

Ja. Astro ondersteunt React, Preact, Svelte, Vue, Solid, HTMX, webcomponenten en andere UI-benaderingen. Teams moeten integraties doelbewust gebruiken, omdat het combineren van frameworks runtimecode en onderhoudswerk kan toevoegen.

Wat zijn Astro content collections?

Content collections organiseren en valideren Markdown en gerelateerde content met typeveiligheid van TypeScript. Ze zijn nuttig wanneer een project een consistente structuur nodig heeft voor het publiceren, doorzoeken en renderen van groepen content.

Is Astro geschikt voor een zeer interactieve webapplicatie?

Dat hangt ervan af of de interface in betekenisvolle onafhankelijke islands kan worden verdeeld. Als bijna ieder gebied hydration, gedeelde clientstatus en continue updates in de browser nodig heeft, past een meer applicatiegerichte architectuur mogelijk beter bij het dominante interactiemodel.

Wie introduceerde Astro en waar kunnen gebruikers deelnemen?

Fred Schott en Nate Moore schreven Astro's officiële openbare introductie in juni 2021; de bron stelt niet vast dat er één oprichter is. Officieel materiaal verwijst gebruikers voor hulp en feedback naar Discord en voor deelname en bijdragen naar GitHub.

Continue exploring

More published records in Developer Tools.

View all alternatives

Gatsby verbindt React-websites met gestructureerde content en flexibele rendering

Developer ToolsGoogle Analytics

Next.js voegt routing, rendering en serverfuncties toe aan React

Developer ToolsGoogle AnalyticsNext.js

nuxt.com

200 OK

Bouw Vue-websites en -applicaties met routering, serverlogica en flexibele rendering

Developer ToolsNuxtVercel