Φωτογραφία από rawpixel στο Unsplash

Πώς να επιλέξετε το Best Static Site Generator το 2018

Ετσι.

Πολλά.

Στατικές γεννήτριες τοποθεσιών.

Ακόμη και για εμάς που έχουμε κάνει 15+ (και μετράμε) demos & tutorials μαζί τους, μπορεί να πάρει αρκετά συντριπτική.

Δεν μπορώ να πιστέψω τι πρέπει να είναι για έναν προγραμματιστή που μόλις μαθαίνει για το JAMstack και το στατικό web ecosystem.

Όπως η προσγείωση στη χώρα των θαυμάτων

Για να προσπαθήσουμε και να τους βοηθήσουμε, αποφασίσαμε να συνθέσουμε τις γνώσεις μας σε ένα ολοκληρωμένο κομμάτι.

Μέχρι το τέλος αυτής της ανάρτησης, θα πρέπει να μπορείτε να βρείτε την καλύτερη γεννήτρια στατικών τοποθεσιών (SSG) για κάθε συγκεκριμένο έργο.

Εδώ θα μάθετε για SSG:

  1. Τι είναι (και γιατί πρέπει να τα χρησιμοποιήσετε).
  2. Ποιες είναι οι καλύτερες γεννήτριες στατικών τοποθεσιών σήμερα.
  3. Πρέπει να λάβετε υπόψη σας πριν από την επιλογή του.

1. Στατικές γεννήτριες τοποθεσιών, τι είναι;

Εάν βρίσκεστε εδώ ψάχνοντας για τη σωστή SSG, υποθέτω ότι έχετε μια αξιοπρεπή κατανόηση του τι είναι. Ακόμα, ένα μικρό πλαίσιο δεν μπορεί να βλάψει.

Οι στατικοί ιστότοποι δεν είναι νέοι. Ήταν αυτό που χρησιμοποιήσαμε για να φτιάξουμε τον τρόπο διαδικτύου πριν από την ανάληψη δυναμικού CMS (WordPress, Drupal, κλπ.).

Τι νέο υπάρχει λοιπόν;

Τα σύγχρονα εργαλεία - οι γεννήτριες στατικών τοποθεσιών, κυρίως - που εξελίχθηκαν τα τελευταία χρόνια, επέκτειναν τις δυνατότητες των στατικών τοποθεσιών.

Με απλά λόγια, μια γεννήτρια στατικών τοποθεσιών λαμβάνει το περιεχόμενο του ιστότοπού σας, το εφαρμόζει σε πρότυπα και δημιουργεί μια δομή αμιγώς στατικών αρχείων HTML έτοιμα να παραδοθούν στους επισκέπτες.

Αυτή η διαδικασία φέρνει το μερίδιό της σε οφέλη σε σύγκριση με τα παραδοσιακά CMS.

Γιατί να τα χρησιμοποιήσετε;

Έχοντας να τραβήξει δυναμικά πληροφορίες από μια βάση δεδομένων κάθε φορά που ένας επισκέπτης χτυπά μια σελίδα σε ένα site με μεγάλη περιεκτικότητα μπορεί να έχει ως αποτέλεσμα καθυστερήσεις που προκαλούν απογοήτευση και αναπήδηση.

Τα SSG εξυπηρετούν ήδη αρχειοθετημένα αρχεία στο πρόγραμμα περιήγησης, μειώνοντας τους χρόνους φόρτωσης με μεγάλο περιθώριο.

→ Ασφάλεια και αξιοπιστία

Μία από τις μεγαλύτερες απειλές ανάπτυξης με ένα δυναμικό CMS είναι η έλλειψη ασφάλειας. Η ανάγκη τους για μεγαλύτερες υποδομές από πλευράς διακομιστή ανοίγει το δρόμο για ενδεχόμενες παραβιάσεις.

Με στατικές ρυθμίσεις, υπάρχει ελάχιστη ή καμία λειτουργία διακομιστή.

→ Ευελιξία

Τα παραδοσιακά CMS που είναι γνωστά και δυσκίνητα είναι περιοριστικά. Ο μόνος τρόπος για την κλίμακα είναι με τα υπάρχοντα πρόσθετα και η προσαρμογή περιορίζεται στις διαθέσιμες πλατφόρμες θεμάτων. Αυτό είναι δροσερό εάν είστε μη τεχνικός χρήστης, αλλά οι προγραμματιστές βρίσκουν γρήγορα τα χέρια δεμένα.

Οι SSG ενδέχεται να ζητούν περισσότερες τεχνικές δεξιότητες, αλλά θα επιβραβεύουν τους προγραμματιστές με ελευθερία. Οι περισσότεροι από αυτούς έχουν επίσης οικοσυστήματα προσθήκης, που χαρακτηρίζουν και είναι εύκολο να συνδέσουν υπηρεσίες τρίτου μέρους. Επιπλέον, η δυνατότητα επέκτασης με τη βασική γλώσσα προγραμματισμού είναι απεριόριστη.

→ Οι αδυναμίες τους είναι ... εξαφανίζονται.

Με ένα συνεχώς αυξανόμενο οικοσύστημα που περιβάλλει την ανάπτυξη στατικών ιστοτόπων, πολλά από τα βασικά του ζητήματα είναι η εύρεση απαντήσεων μέσω νέων εργαλείων.

Η διαχείριση περιεχομένου και οι διοικητικές εργασίες μπορούν να αποτελέσουν πρόκληση για τους τελικούς χρήστες που δεν διαθέτουν τεχνικό υπόβαθρο. Τα καλά νέα είναι ότι υπάρχει ένας εντυπωσιακός αριθμός κεφαλών CMS που είναι έτοιμοι να ολοκληρώσουν το SSG σας. Η διαφορά μεταξύ των κεφαλών και των παραδοσιακών CMS είναι ότι θα χρησιμοποιήσετε τον πρώην μόνο για εργασίες "διαχείρισης περιεχομένου", χωρίς να δημιουργείτε templating και να δημιουργείτε περιεχόμενο στο front end. Σίγουρα θα βρείτε ένα που ταιριάζει στις ανάγκες σας.

Κάποια CMSs στατικής τοποθεσίας υποστηρίζουν SSGs κατ 'ευθείαν επάνω. Για παράδειγμα, Δασοκομία για Jekyll & Hugo ή DatoCMS για πολλούς από αυτούς.

Όσον αφορά τα δυναμικά χαρακτηριστικά που είναι απαραίτητα για μια μεγάλη εμπειρία χρήστη; Υπάρχει μια δέσμη των φοβερών διαθέσιμων υπηρεσιών:

  • Serverless ή Webtask για λειτουργίες backend,
  • Netlify για ανάπτυξη,
  • Algolia για αναζήτηση,
  • Snipcart για το ηλεκτρονικό εμπόριο,
  • Disqus ή Staticman για περιεχόμενο που δημιουργείται από χρήστες.

Αυτά είναι μόνο μερικά παραδείγματα για το τι είναι εκεί έξω.

Πωλούν τις γεννήτριες JAMstack και στατικών τοποθεσιών στους πελάτες σας, μεταφράζοντας αυτές τις αναπτυξιακές προόδους σε επιχειρηματικά οφέλη. Διαβάστε αυτόν τον οδηγό για να μάθετε περισσότερα.

2. Ποια γεννήτρια στατικών τοποθεσιών πρέπει να επιλέξετε;

Γνωρίζοντας τι είναι οι γεννήτριες στατικών ιστότοπων και γιατί πρέπει να τις χρησιμοποιήσετε είναι ένα πράγμα, γνωρίζοντας ποιο να υιοθετήσετε είναι μια ολόκληρη άλλη προσπάθεια.

Υπάρχουν πάνω από 400 από αυτούς περιαγωγής στο διαδίκτυο αυτές τις μέρες. Αν ξεκινάτε μόνο με τη στατική ανάπτυξη ιστού, τα παρακάτω θα σας βοηθήσουν στη διαδικασία λήψης αποφάσεων!

Θα καλύψω μερικά από τα καλύτερα εκεί έξω, αλλά θυμηθείτε ότι εξακολουθεί να είναι ένα μικρό μέρος όλων των υφιστάμενων SSGs. Για μια πλήρη λίστα, προτείνω να επισκεφθείτε το staticgen.com.

2.1 Καλύτερες γεννήτριες στατικών τοποθεσιών το 2018

Σε αυτή την ενότητα παρουσιάζω αυτά που θεωρώ ότι θα έπρεπε να γνωρίζετε και που θα ανταποκρίνονται στις ανάγκες των περισσότερων έργων. Αυτές οι επιλογές βασίζονται στη γενική δημοτικότητα αλλά και στην εμπειρία της ομάδας μας για την οικοδόμηση δεκάδων JAMstack demos.

Jekyll

Ακόμα το πιο δημοφιλές SSG, με μεγάλη βάση χρηστών και μεγάλο κατάλογο plugin. Είναι εξαιρετικό για τα blog και επίσης χρησιμοποιείται ευρέως από ιστότοπους ηλεκτρονικού εμπορίου.

Ένα από τα βασικά σημεία πώλησης της Jekyll για τους νεοφερμένους είναι η μεγάλη γκάμα των εισαγωγέων της. Επιτρέπει τη μετακίνηση ενός υφιστάμενου ιστότοπου σε Jekyll με σχετική ευκολία. Αν έχετε έναν ιστότοπο WordPress, για παράδειγμα, μπορείτε να μεταβείτε στο Jekyll χρησιμοποιώντας ένα από αυτά.

Ο Jekyll σας δίνει τη δυνατότητα να επικεντρωθείτε στο περιεχόμενο χωρίς να ανησυχείτε για βάσεις δεδομένων, ενημερώσεις και σχολιασμό μετριοπάθειας διατηρώντας παράλληλα τις λέξεις, κατηγορίες, σελίδες, αναρτήσεις και προσαρμοσμένες διατάξεις.

Είναι χτισμένο με Ruby και ενσωματωμένο στις σελίδες GitHub, οπότε υπάρχει πολύ μικρότερος κίνδυνος να γίνει hacked. Το Theming είναι απλό, το SEO ψήνεται, και η κοινότητα του Jekyll προσφέρει πολλά plugins για προσαρμογή.

→ Jekyll Tutorials:

  • Στατικό Site Ηλεκτρονικό Εμπόριο: Ενσωμάτωση Snipcart με Jekyll
  • CloudCannon CMS για Jekyll: Δημιουργία ενός πολύγλωσσου χώρου
  • Staticman για περιεχόμενο που δημιουργείται από χρήστες σε μια static ιστοσελίδα Jekyll

Gatsby

Το Gatsby φέρνει στατικές σελίδες στα stack frontend, αξιοποιώντας το JavaScript από την πλευρά του πελάτη, επαναχρησιμοποιούμενα API και προεγκατεστημένο Markup. Είναι μια εύκολη στη χρήση λύση που δημιουργεί ένα SPA (Single Page Application) με το React.js, το Webpack, το σύγχρονο JavaScript, το CSS και πολλά άλλα.

Το Gatsby.js είναι μια στατική γεννήτρια PWA (Progressive Web App). Λαμβάνει μόνο το κρίσιμο HTML, CSS, δεδομένα και JavaScript, έτσι ώστε ο ιστότοπός σας να μπορεί να φορτωθεί όσο το δυνατόν γρηγορότερα.

Το πλούσιο οικοσύστημα προσθήκης δεδομένων επιτρέπει σε έναν ιστότοπο να τραβήξει δεδομένα από διάφορες πηγές, συμπεριλαμβανομένων κεφαλών CMS, υπηρεσιών SaaS, API, βάσεων δεδομένων, συστημάτων αρχείων και πολλά άλλα.

Το Gatsby διαθέτει ένα ευρύ φάσμα εφαρμογών και αποτελεί μια σταθερή επιλογή για ιστότοπους που πρέπει να χρησιμοποιούν δεδομένα από πολλές πηγές. Είναι στο δρόμο προς την κορυφή, μην εκπλαγείτε αν γίνει ο SSG νούμερο ένα στους επόμενους μήνες.

Ω, και θα μπορούσε επίσης να διορθώσει έναν από τους μεγαλύτερους δίσκους με SSG: (μακρά) ατομικές κατασκευές. Ο δημιουργός Kyle Matthews δημιούργησε πρόσφατα μια εταιρεία πάνω από το έργο ανοιχτού κώδικα. Η Gatsby Inc. θα κατασκευάσει μια υποδομή cloud για ιστότοπους Gatsby που θα μπορούσαν να επιτρέψουν τη δημιουργία αυξομειώσεων - ένα παιχνίδι αλλαγής για SSGs.

→ Gatsby Tutorials:

  • ReactJS Ηλεκτρονικό Εμπόριο χωρίς Backend χρησιμοποιώντας το Snipcart & Gatsby
  • Grav ως κεφαλής CMS συνδεδεμένο με το Gatsby με το GraphQL Schema
  • Στατικά φορμά, λειτουργίες Auth & Serverless (Demo Gatsby + Netlify)

Ούγκω

Ένα εύκολο στη ρύθμιση, φιλικό προς το χρήστη SSG που δεν χρειάζεται πολύ config πριν πάρετε το site σε λειτουργία.

Ο Hugo είναι γνωστός για την ταχύτητα κατασκευής του, ενώ τα δεδομένα του με βάση τα δεδομένα καθιστούν εύκολη τη δημιουργία HTML με βάση τις JSON / CSV feeds. Μπορείτε επίσης να γράψετε τα δικά σας shortcodes και να χρησιμοποιήσετε τα προ-κατασκευασμένα πρότυπα για να ρυθμίσετε γρήγορα SEO, σχόλια, αναλύσεις και άλλες λειτουργίες.

Επιπλέον, η Hugo παρέχει πλήρη υποστήριξη i18n για πολυγλωσσικές τοποθεσίες, καθιστώντας εύκολη την πρόσβαση σε ένα διεθνές ακροατήριο. Αυτό είναι ιδιαίτερα χρήσιμο για εμπόρους ηλεκτρονικού εμπορίου που θέλουν να εντοπίσουν τους ιστοτόπους τους.

Επιπλέον, ανακοίνωσαν πρόσφατα ένα προηγμένο χαρακτηριστικό γνώρισμα που προσφέρει έναν ισχυρό τρόπο κατασκευής τοποθεσιών Hugo με επαναχρησιμοποιήσιμα εξαρτήματα.

→ Hugo Tutorials:

  • Πώς να οικοδομήσουμε και να φιλοξενήσουμε μια (πολύ γρήγορη) στατική τοποθεσία ηλεκτρονικού εμπορίου
  • Στατικό ηλεκτρονικό εμπόριο στο Hugo με διαχείριση προϊόντων στη δασοκομία
  • Μια μεγάλη, γρήγορη στατική εμπειρία ηλεκτρονικού εμπορίου με 6 εύχρηστα εργαλεία

Next.js

Παρόλο που δεν είναι απαραίτητο ένα SSG per se, το Next.js είναι ένα ελαφρύ πλαίσιο για εφαρμογές Static και server rendered React.

Χτίζει Universal εφαρμογές JavaScript, πράγμα που σημαίνει ότι το JS τρέχει τόσο σε πελάτη όσο και σε διακομιστή. Αυτή η διαδικασία έχει ενισχύσει τις επιδόσεις αυτών των εφαρμογών στις δυνατότητες πρώτης σελίδας φόρτωσης και SEO. Το σύνολο των χαρακτηριστικών του Next.js περιλαμβάνει τον αυτόματο διαχωρισμό κώδικα, την απλή δρομολόγηση από την πλευρά του πελάτη, το περιβάλλον dev που βασίζεται στο webpack και οποιαδήποτε εφαρμογή διακομιστή Node.js.

Το JavaScript είναι παντού σήμερα, το React είναι το πιο μοντέρνο πλαίσιο JS frontend από σήμερα, οπότε σίγουρα αξίζει να το δούμε.

→ Επόμενο.js Εκμάθηση:

  • Next.js Εκμάθηση: SEO-Friendly React Ηλεκτρονικό Εμπόριο SPA
  • Παρουσιάζοντας την κατασκευή ενός διακομιστή-rendered ReactJS εφαρμογή με Next.js

Nuxt.js

Παρόμοια με το όνομα και το σκοπό με το Next.js, το Nuxt είναι ένα πλαίσιο για τη δημιουργία των Universal Vue.js Applications. Ενεργοποιεί την απόδοση UI ενώ παράλληλα αφαιρεί τη διανομή πελάτη / διακομιστή. Έχει επίσης μια επιλογή ανάπτυξης που ονομάζεται nuxt generate για την κατασκευή στατικών παραγόμενων εφαρμογών Vue.js.

Αυτό το μινιμαλιστικό πλαίσιο για τη μετάβαση σε serverless είναι απλό και απλό, αλλά είναι πιθανώς προσανατολισμένο περισσότερο προς την προγραμματική υλοποίηση αντί για ένα παραδοσιακό DOM ικρίωμα.

Δεδομένου ότι το Nuxt είναι ένα Vue πλαίσιο, η εξοικείωση με την Vue συνιστάται ιδιαίτερα, αλλά οι προγραμματιστές που έχουν συνεργαστεί με την Vue πριν θα αισθάνονται σαν στο σπίτι τους. Με την ταχεία άνοδο του Vue.js στο οικοσύστημα JavaScript - και λαμβάνοντας υπόψη τη συλλογική μας αγάπη για αυτό -, δεν είναι περίεργο που καταλήγει σε αυτόν τον κατάλογο.

Αν είστε fan του Vue.js, μπορείτε επίσης να ελέγξετε το VuePress.

→ Nuxt Tutorials:

  • Ένα σεμινάριο για το Bundle Cockpit CMS & Nuxt.js σε ένα πλήρες JAMstack
  • Απλή προβολή, δρομολόγηση και μετάβαση σελίδας με το διακομιστή Nuxt.js

2.2 Βασικές εκτιμήσεις

Αυτή η ενότητα θα λάβει μια άλλη προσέγγιση για να σας βοηθήσει να ανακαλύψετε τον ψυχολόγο σας SSG. Θα βρείτε μερικούς νέους εδώ που δεν ανέφερα στην τελευταία ενότητα.

Ακολουθούν μερικές ερωτήσεις που πρέπει να αναρωτηθείτε πριν επιλέξετε το σωστό εργαλείο:

1. Χρειάζεστε πολλά δυναμικά χαρακτηριστικά & επεκτάσεις από το κιβώτιο;

Υπάρχουν δύο σχολές σκέψεων εδώ.

  1. Επιλέξτε μια στατική γεννήτρια τοποθεσιών που προσφέρει ένα μεγάλο αριθμό χαρακτηριστικών εκτός πλαισίου. Δεν θα χρειαστείτε τόνους plugins ή να κατασκευάσετε τα πάντα μόνοι σας. Στην περίπτωση αυτή, ο Hugo παρουσιάζει ένα τεράστιο σύνολο ενσωματωμένων λειτουργιών με τις οποίες μπορείτε να φτάσετε στην εργασία. Ο Gatsby ταιριάζει επίσης στο νομοσχέδιο εδώ.
  2. Επιλέξτε ένα SSG που συνοδεύεται από λιγότερα χαρακτηριστικά, αλλά προσφέρει ένα ευρύ οικοσύστημα plugin που σας επιτρέπει να επεκτείνετε και να προσαρμόσετε τις ρυθμίσεις σας ανάλογα με τις ανάγκες σας. Αυτό πιθανώς αντιπροσωπεύει ένα από τα μέγιστα δυνατά σημεία του Jekyll. Το γεγονός ότι είναι τόσο δημοφιλές για τόσο πολύ καιρό έχει μεταφραστεί σε μια μεγάλη κοινότητα και ένα ευρύ φάσμα plugins. Για να προωθήσουμε αυτή την ιδέα ακόμα περισσότερο, το Metalsmith ή η Spike αφήνουν όλους τους χειρισμούς σε plugins, καθιστώντας τους εξαιρετικά προσαρμόσιμο και ικανό να κατασκευάσουν οτιδήποτε. Το συμβιβασμό εδώ είναι ότι αυτό απαιτεί ένα υψηλότερο επίπεδο τεχνικής επάρκειας για την αντιμετώπιση περιπτώσεων χρήσης. Αλλά αυτό θα μπορούσε να είναι μια ασημένια επένδυση αν προσπαθείτε να μάθετε τη γλώσσα SSG σας τρέχει!

2. Πόσο σημαντικό είναι να χτίσετε και να αναπτύξετε χρόνο;

Όπως ήδη ανέφερα, οι στατικοί ιστότοποι, γενικά, αποτελούν μια μεγάλη βελτίωση για την ταχύτητα, αλλά μερικές SSG προωθούν την μπάρα περαιτέρω.

Ο σαφής νικητής εδώ είναι ο Hugo. Είναι γνωστό για τους φλεγόμενους γρήγορους χρόνους οικοδόμησης. Μπορεί να συγκεντρώσει έναν απλό ιστό από σήμανση και πρότυπα σε χιλιοστά του δευτερολέπτου και να περάσει από χιλιάδες σελίδες σε δευτερόλεπτα.

Τα ενεργά πλαίσια, όπως το Nuxt, είναι επίσης εξαιρετικά χρήσιμα για επιδόσεις και σκοπούς SEO.

Αυτή είναι μια περιοχή όπου ο Jekyll φαίνεται πραγματικά κακός - πολλοί προγραμματιστές διαμαρτύρονται για την ταχύτητα κατασκευής του.

3. Ποιος είναι ο τύπος του έργου που θέλετε να χειριστείτε με ένα SSG;

Εξετάστε το τελικό στόχο του έργου σας. Δεν δημιουργούνται όλες οι γεννήτριες για τα ίδια αποτελέσματα, και θα εξοικονομήσετε πολύ πόνο επιλέγοντας ένα που είναι εξειδικευμένο για αυτό που προσπαθείτε να επιτύχετε.

→ Blog ή μικρές προσωπικές ιστοσελίδες:

Ο Jekyll είναι ο προφανής για να αναφέρουμε εδώ. Παρουσιάζεται ως μια SSG που γνωρίζει το blog και αφαιρεί όλα όσα θα μπορούσαν να παρεμποδίσουν αυτό που πραγματικά έχει σημασία σε ένα blog: το περιεχόμενο. Hexo είναι ένα άλλο που πρέπει να εξετάσετε για την οικοδόμηση μιας απλής πλατφόρμας blogging. Τελικά όμως, οι περισσότεροι SSG θα κάνουν τη δουλειά στον τομέα αυτό.

Δείτε επίσης: Hugo, Pelican, Gatsby.

→ Τεκμηρίωση:

Το GitBook καθιστά εύκολο να γράφετε και να διατηρείτε υψηλής ποιότητας τεκμηρίωση και είναι εύκολα το πιο δημοφιλές εργαλείο αυτού του είδους.

Δείτε επίσης: Docusaurus, MkDocs.

→ Ηλεκτρονικό Εμπόριο:

Μπορείτε επίσης να ενσωματώσετε εύκολα ένα κατάστημα στις περισσότερες στατικές γεννήτριες τοποθεσιών (όπως φαίνεται σε προηγούμενα μαθήματα). Το ηλεκτρονικό εμπόριο μπορεί να είναι πολύ δύσκολο, καθώς πολλές πτυχές λαμβάνονται υπόψη. Σκεφτείτε τις πτυχές που σχετίζονται με την εμπειρία χρήστη, όπως η προσαρμογή ταχύτητας και UI. SEO είναι επίσης κάτι που δεν θέλετε να αγνοήσετε κατά την ανάπτυξη μιας επιχείρησης στο διαδίκτυο.

Για μεγαλύτερα καταστήματα όπου μπορεί να χρειαστείτε ένα CMS για τη διαχείριση προϊόντων, αναρωτηθείτε ποια SSG θα είναι η καλύτερη εφαρμογή για το CMS χωρίς κεφαλή της επιλογής σας.

Έχοντας αυτά κατά νου, αντλώντας από τις δικές μας εμπειρίες, προτείνουμε να κοιτάξουμε αντιδραστικά πλαίσια όπως το Gatsby & Nuxt. Αλλά δεν σημαίνει ότι θα πρέπει να αφήσετε κατά μέρος πιο φιλικές επιλογές όπως Jekyll ή Hugo εάν πρέπει να κρατάτε τα πάντα απλά.

→ Ιστοσελίδα μάρκετινγκ:

Ένας ακόμα που δεν έχω ακόμα αναφέρει είναι ο Middleman. Αυτό που διαφοροποιεί αυτό το από τη δέσμη είναι ότι στοχεύει να προσφέρει την ευελιξία για την κατασκευή κάθε είδους χώρου, αντί να είναι βαριά προσανατολισμένη προς μια μηχανή blogging. Είναι υπέροχο για προηγμένες ιστοσελίδες μάρκετινγκ και εταιρείες όπως το MailChimp και η Vox Media το έχουν χρησιμοποιήσει για δικές τους.

Δείτε επίσης: Gatsby, Hugo, Jekyll.

4. Εάν είστε πρόθυμοι να τροποποιήσετε τον ιστότοπο ή / και τη γεννήτρια τον εαυτό σας, χρειάζεστε να είναι σε μια συγκεκριμένη γλώσσα που γνωρίζετε καλά;

Εάν ναι, εδώ πρέπει να εξετάσετε τις παρακάτω γλώσσες:

  • JavaScript: Next.js & Gatsby (για React), Nuxt & VuePress (για Vue), Hexo, GitBook, Metalsmith, Harp, Spike.
  • Python: Πελεκάνος, MkDocs, Κάκτος.
  • Ruby: Jekyll, Middleman, Nanoc, Octopress.
  • Πηγαίνετε: Hugo, InkPaper.
  • .NET: Wyam, κουλουράκι.

5. Οι μη τεχνικοί χρήστες πρόκειται να εργαστούν σε αυτόν τον ιστότοπο;

Αφού γίνει το τμήμα ανάπτυξης και δημιουργηθεί ο ιστότοπος, ποιος θα το εκτελέσει και θα επεξεργαστεί το περιεχόμενό του; Στις περισσότερες περιπτώσεις, αυτό πέφτει στα χέρια μη τεχνικών χρηστών που θα δυσκολευτούν να πλοηγηθούν μέσω repos κώδικα.

Εδώ πρέπει να εξετάσετε το ενδεχόμενο να αντιστοιχίσετε το SSG σας με ένα headless CMS. Όχι μόνο η επιλογή του CMS είναι σημαντική, αλλά και η εξεύρεση της σωστής SSG για προσκόλληση στο frontend είναι κρίσιμη.

Ο Gatsby έχει προωθήσει αυτή τη σκέψη με ένα από τα τελευταία χαρακτηριστικά του, μια εφαρμογή GraphQL. Δεν θα μπω στην εξήγηση του τι είναι το GraphQL, αλλά με λίγα λόγια, επιτρέπει ταχύτερες ερωτήσεις δεδομένων με λιγότερα φουσκώματα.

6. Είναι η κοινότητα και η βοήθεια από τους συναδέλφους σας σημαντική για σας;

Εάν ναι, θεωρήστε μία από τις κορυφαίες γεννήτριες στατικών τοποθεσιών που αναφέρονται παραπάνω. Αυτά είναι τα πιο δημοφιλή αυτή τη στιγμή και υποστηρίζονται από τις πιο ενεργές κοινότητες που αναπτύσσουν plugins, μελέτες περιπτώσεων και πόρους κάθε είδους.

Θυμηθείτε ότι οι σύγχρονες στατικές τοποθεσίες και το JAMstack εξακολουθούν να αποτελούν μέρος ενός σχετικά νέου οικοσυστήματος και αν ξεκινήσετε με λιγότερο γνωστά εργαλεία, θα ανακαλύψετε γρήγορα την έλλειψη διαθέσιμης βοήθειας.

Κλείνοντας τις σκέψεις

Δεν θα τελειώσω αυτό το post λέγοντάς σας ποια γεννήτρια στατικών ιστότοπων είναι η καλύτερη και ποια θα πρέπει να επιλέξετε. Κυρίως επειδή απλά δεν έχω την απάντηση, αλλά και επειδή πρέπει τώρα να έχετε αρκετές πληροφορίες για να κάνετε αυτό τον εαυτό σας.

Το μόνο που χρειάζεται να κάνετε τώρα είναι να βγείτε έξω και να εξερευνήσετε κάθε πιθανότητα που σας φαίνεται ελκυστική. Ένα πράγμα είναι σίγουρο, είναι ότι θα πρέπει να διασκεδάσετε να το κάνετε καθώς οι SSGs δίνουν τελικά την ελευθερία και την ευελιξία πίσω στους προγραμματιστές.

Ποια γεννήτρια στατικών σελίδων θα συνιστούσατε; Τι θα ακολουθήσει για το οικοσύστημα JAMstack; Θέλω πραγματικά να ακούσω από σας, ώστε να συμμετάσχετε στη συζήτηση στα σχόλια παρακάτω!

Εάν έχετε απολαύσει αυτή τη θέση, παρακαλώ πάρτε ένα δευτερόλεπτο για να το μοιραστείτε στο Twitter.

Αρχικά δημοσίευσα αυτό στο blog Snipcart και το μοιραζόμασα στο ενημερωτικό μας δελτίο.