De bedste statiske webstedsgeneratorer, og hvornår du skal vælge dem frem for et CMS

Tilbage på dagen var websider statiske websteder med kun HTML og CSS (og senere noget JavaScript). Prøv at huske, hvad det faktisk betyder.

Der var ingen serverkode eller database. Din browser downloadede og viste en HTML-fil, der er hostet et eller andet sted. Udviklingen blev gjort direkte i tekstfilerne eller gennem programmer som Dreamweaver.

Webudvikling fik endelig tempo, og indtil nu er det ikke stoppet med at fremskynde. På et tidspunkt opstod forestillingen om Content Management System (CMS). Derefter voksede og blomstrede nye måder at udvikle portaler, blogs og marketingsteder på. Det gør de stadig, idet WordPress er det førende CMS-valg lige nu.

Et CMS kan løse mange problemer, både fra udviklerens eller administratorens synspunkt. Men der er nogle grunde til ikke at bruge en af ​​dem og vende tilbage til en gammel, gammel ven.

Valg af et CMS til et specifikt projekt kræver stramme specifikationer og afhængigheder. En typisk WordPress-installation har brug for en webserver som Apache, PHP med forskellige udvidelser og MySQL-database. Alle disse skal opdateres og vedligeholdes. Men i visse situationer kan disse procedurer endda forårsage flere problemer.

En af de vigtigste faktorer for webudvikling i dag er sikkerhed. Desværre er det en af ​​de vigtigste ulemper ved CMS. Brug af et CMS er som at gøre dig selv sårbar over for cyberangreb. Antallet af sårbarheder, du åbner dig selv for, øges med de plugins, du installerer og bruger. (Plugins er den virkelige grund til at bruge et CMS i første omgang.)

Bortset fra sikkerhed er en anden vigtig faktor i et moderne projekt ydeevne. Et CMS genererer den side, som brugeren anmodede om fra bunden, eller bruger et indbygget eller installerbart plugin. Cache-systemet sikrer genbrug af en prægenereret side, når det er muligt. Brug af en slags cache-system kan hjælpe meget, men det kan tilføje en del overhead.

Så ved at oprette et statisk sted bliver disse problemer forældede. Et statisk sted består kun af, som navnet antyder, statiske filer. Ligesom nogle HTML- og CSS-filer og lidt JavaScript.

Der er ingen specifikke krav til typen af ​​maskine, der er vært for siden, ingen begrænsning af back-end-sprog og intet behov for en database. Da statiske filer serveres til browseren, er der ingen faktiske sårbarheder.

De faktiske sider er allerede genereret og måske minificeret. Set fra ydeevne synes de at være meget bedre end nogen CMS-cache-løsning.

Mere så moderne statiske generatorer læser typisk fra filer af flad type, som Markdown. Indlægets indhold ligger i filer i stedet for en database, så du kan placere dem under din Git-arbejdsgang.

Men statiske steder har også nogle ulemper. Du er dybest set grøfter bagenden af ​​internettet. Vigtigst af alt mister du interaktivitet med brugeren - ting som brugerprofiler, favoritter og foreslåede læsninger. Der er måder at tilføje et par af disse funktioner på - som at kommentere via Disqus-platformen - men disse er ikke optimale.

Den største funktion, der mangler fra disse generatorer, er manglen på et administrativt brugergrænseflade. (Selvom det er et rimeligt gæt at der vil være en løsning på dette på et eller andet tidspunkt.) Nogle flere tekniske personer finder det måske ikke så svært at oprette nye filer i korrekte mapper og linke aktiver som billeder. Men for det meste kan ikke-tekniske indholdsskabere finde ud af, at manglen på en administrator-UI er et levende helvede.

Dette er primært en projektplanlægningsbeslutning baseret på dens krav. For mange websteder er en CMS bestemt overdreven.

I betragtning af ovenstående punkter skal du være i stand til at besvare, om et statisk websted er nok til et specifikt projekt. Men et andet problem ville være den store mængde valg, der kræves, og den ledsagende første opsætningstid.

I CMS-verdenen er der utallige muligheder, men også en vinder. WordPress vil som et valg gøre jobbet til ethvert projekt. På statisk generatorer verden er der for mange muligheder - 459 for at være præcise.

Men der er ingen klar vinder eller en måde at differentiere dem på. Det ser ud til, at det kan ændre sig fra nu af, men det skal stadig ses. Nogle af dem har vundet stor popularitet og er værd at bemærke.

Jekyll er langt den mest populære af disse generatorer. Den er bygget med Ruby og integreret i GitHub Pages. Så det er ret populært til personlige projekter og / eller dokumentation. Det har en enorm brugerbase og et stort bibliotek med plugins.

Hugo er meget lig Jekyll. Det er bygget på Go, og dets vigtigste punkt mod Jekyll er dens brændende hurtige hastighed. Jekyll kan være ret langsom, når det faktiske sted genereres, især når antallet af indlæg / sider stiger.

Men Hugo genererer siden på få sekunder. Der er andre abstraktioner, der gør Hugo mere brugervenlig og lettere at starte med. Det har ikke brug for så meget konfiguration for at skabe noget fra bunden.

Hexo er en nyere tilføjelse og oprettet med NodeJS. Annonceret og mest brugt som en blogplatform kombinerer den Jekylls udvidelighed med Hugos hastighed. (faktisk hurtigere end Hugo)

Wintersmith er en anden bygget oven på NodeJS. Denne er anderledes, da den er ret minimalistisk. Det er dybest set en platform, som du kan tilpasse gennem nogle plugins til dine behov. Det kræver bestemt noget justering for at få det til at fungere, men giver mere plads til tilpasning.

Den sidste mulighed er den nyeste og mest interessante.

Gatsby er den ene ramme, der bringer de statiske sider til stakke i dag. Det bruger React.js og Webpack til at oprette en SPA (Single Page Application) med dit indhold. Det lover at fjerne meget af den nødvendige konfiguration til en sådan applikation. Dermed giver det udvikleren en brugervenlig løsning, der i sidste ende vil producere en moderne og avanceret applikation.

Sandheden er, at Gatsby kan bruges til mange andre ting end bare en blog. Dens sande grænse er endnu ikke fundet. (Da den først nåede sin første stabile udgivelse tidligere på denne måned.)

Det faktum, at det bruger React hjælper meget, da flere udviklere bruger React lige nu eller planlægger at snart.

Resumé

Når man ser på downloads fra de sidste seks måneder, kan vi se, at Gatsby måske er en vinder undervejs. Disse tal er muligvis ikke 100% sande.

Gatsby kan også bruges til mere komplekse ting end markdown-til-HTML-konvertering. Men da brugerbasen udvides hurtigt, har vi muligvis fundet WordPress til statiske webstedsgeneratorer.