J'comprends pas l'intérêt de Gatsby (générateur de sites statiques)

Le problème exposé dans ce sujet a été résolu.

Salut !

Avec Gatsby, on peut générer des fichiers HTML, CSS, JS, avec les images etc. et mettre ces derniers dans un serveur, tel OVH.

Le truc c’est que… eh bien… pourquoi ne pas créer à la main chacun de ces fichiers, au lieu de passer par Gatsby qui va les générer ? En effet ça fait une techno de plus à apprendre alors qu’on pourrait juste se contenter d’HTML, CSS, JS.

Bref j’vois pas pourquoi y a cette hype autour de la JAMSTACK.

qlq pour éclairer ma lanterne ?

merci bien,

à plus et bonne continuation :)

Salut,

Ce n’est pas un nouveau langage, il s’appuie sur le framework React pour designer les pages et utiliser les API de l’environnement Gatsby. Rien de plus.

La hype c’est surtout l’aspect serverless (tel que l’on peut avoir un service comme Netlify). On n’a pas besoin de configurer le serveur, générer un certificat SSL, installer une BDD et préparer la mise en production. Tout est fait pour que tu connectes ton dépôt GIT et que ton site soit en place dans les 2 minutes avec tout l’écosystème nécessaire. Pas besoin de réinventer la roue, puis-ce que les connecteurs d’API sont prêts à l’emplois immédiatement.

Dans l’idée avec les frameworks JS, tu peux faire ce que tu veux : export local (un fichier), intégration dans une appli mobile (via webview), appli de bureau (Electron/NW), front-end pour site web (bundle) ou même plugin JS.

Après c’est une façon de développer. Dans notre entreprise on continue le développement à l’ancienne avec un serveur, BDD et déploiement Node/PHP sur du Docker. Pour mes projets persos en revanche, j’utilise massivement le serverless depuis plus de deux ans.

Leur site est quand même beaucoup plus orienté « marketing / on est les meilleurs » avec un max de mot-clés bullshitesques que vraie volonté de proposer des informations honnêtes.

Aparté

Si vous avez un framework de ce type à vendre, par pitié : soyez honnête et indiquez clairement les forces et les faiblesses de votre produit. Donnez les vrais cas d’usages, pas juste « on sait tout faire et on est les meilleurs partout. Idem avec les comparatifs, soyez honnêtes et mentionnés les points où votre solution est moins adaptée.

Déjà parce que ça évite de s’énerver sur des promesses non tenues.

D’autre part parce qu’en l’état, ce que propose Gatsby c’est juste malhonnête en fait. Entre les points jugés comme négatifs pour la concurrence alors que ça n’est tout simplement pas dans le concept de ce qu’ils proposent, ou le fait de ne pas mentionner des fonctionnalités primordiales des concurrents

Si je comprends bien, c’est un générateur de site comme peuvent l’être Jekyll ou Hugo, mais où au lieu d’utiliser un langage de templating, tu utilises React et ça te génère un site statique et « optimisé ». Et ça vient avec un écosytème de plugins qui permettent 1. de récupérer des données depuis plein de sources de données tierces, 2. qui permettent de générer un peu n’importe quoi en sortie et 3. qui permettent de déployer facilement n’importe où.

Donc, c’est le niveau intermédiaire entre les sites custom et les générateurs de site statiques. Ça permet d’être plus souple qu’avec les générateurs sus-mentionnés mais en conservant beaucoup de leurs avantages. L’inconvénient, c’est que tu te paluches du React et une grosse pile JS des familles avec tous les inconvénients que ça apporte (un côté usine à gaz, des zillions de plugins pour faire la moindre virgule, un cycle de vie frénétique…). Et aussi, tu imposes à priori à tes clients d’exécuter du JS, avec tout ce que ça implique de positif comme de négatif.

Cela dit si j’ai bien compris ce que ça fait et comment ça marche, ça peut être très intéressant dans certains cas. Par rapport à Hugo, autant pour ce projet je pense que ça ne m’aurait pas servi à grand-chose (les difficultés sont dans le design, une fois fait c’est juste des fichiers markdown, rien que ne permet d’améliorer Gatsby à priori), autant je pense que pour ce projet ça aurait pu m’aider sur pas mal de points (notamment la gestion des images et la partie semi-dynamique).

Salut,

Ce n’est pas un nouveau langage, il s’appuie sur le framework React pour designer les pages et utiliser les API de l’environnement Gatsby. Rien de plus.

La hype c’est surtout l’aspect serverless (tel que l’on peut avoir un service comme Netlify). On n’a pas besoin de configurer le serveur, générer un certificat SSL, installer une BDD et préparer la mise en production. Tout est fait pour que tu connectes ton dépôt GIT et que ton site soit en place dans les 2 minutes avec tout l’écosystème nécessaire. Pas besoin de réinventer la roue, puis-ce que les connecteurs d’API sont prêts à l’emplois immédiatement.

Dans l’idée avec les frameworks JS, tu peux faire ce que tu veux : export local (un fichier), intégration dans une appli mobile (via webview), appli de bureau (Electron/NW), front-end pour site web (bundle) ou même plugin JS.

Après c’est une façon de développer. Dans notre entreprise on continue le développement à l’ancienne avec un serveur, BDD et déploiement Node/PHP sur du Docker. Pour mes projets persos en revanche, j’utilise massivement le serverless depuis plus de deux ans.

Yarflam

Hello Yarflam,

Là il me semble que, peut-être, tu confonds leur solution Gatsby Cloud (ou autre) avec juste Gatsby tout court non ?

Dans l’idée avec les frameworks JS, tu peux faire ce que tu veux : export local (un fichier), intégration dans une appli mobile (via webview), appli de bureau (Electron/NW), front-end pour site web (bundle) ou même plugin JS.

Ok ça c’est bien Gatsby tout court.

Du coup concrètement, si je dois me servir de Gatsby ça suit cette logique :

  • Je génère les fichiers html css js dans leur répertoire ../public/ au lieu de les écrire à la main. Le seul intérêt c’est que Gatsby facilite d’une façon ou d’une autre le développement responsive et le développement multi-plateformes (bureau, web, plugin JS).

  • Je copie/colle ces fichiers dans ../public/ dans le répertoire adéquat de mon serveur OVH et voilà.

  • Il y a quand même leur argument comme quoi y a pas d’attaque DDOS possible etc.

C’est juste ça ?

Leur site est quand même beaucoup plus orienté « marketing / on est les meilleurs » avec un max de mot-clés bullshitesques que vraie volonté de proposer des informations honnêtes.

Aparté

Si vous avez un framework de ce type à vendre, par pitié : soyez honnête et indiquez clairement les forces et les faiblesses de votre produit. Donnez les vrais cas d’usages, pas juste « on sait tout faire et on est les meilleurs partout. Idem avec les comparatifs, soyez honnêtes et mentionnés les points où votre solution est moins adaptée.

Déjà parce que ça évite de s’énerver sur des promesses non tenues.

D’autre part parce qu’en l’état, ce que propose Gatsby c’est juste malhonnête en fait. Entre les points jugés comme négatifs pour la concurrence alors que ça n’est tout simplement pas dans le concept de ce qu’ils proposent, ou le fait de ne pas mentionner des fonctionnalités primordiales des concurrents

Si je comprends bien, c’est un générateur de site comme peuvent l’être Jekyll ou Hugo, mais où au lieu d’utiliser un langage de templating, tu utilises React et ça te génère un site statique et « optimisé ». Et ça vient avec un écosytème de plugins qui permettent 1. de récupérer des données depuis plein de sources de données tierces, 2. qui permettent de générer un peu n’importe quoi en sortie et 3. qui permettent de déployer facilement n’importe où.

Donc, c’est le niveau intermédiaire entre les sites custom et les générateurs de site statiques. Ça permet d’être plus souple qu’avec les générateurs sus-mentionnés mais en conservant beaucoup de leurs avantages. L’inconvénient, c’est que tu te paluches du React et une grosse pile JS des familles avec tous les inconvénients que ça apporte (un côté usine à gaz, des zillions de plugins pour faire la moindre virgule, un cycle de vie frénétique…). Et aussi, tu imposes à priori à tes clients d’exécuter du JS, avec tout ce que ça implique de positif comme de négatif.

Cela dit si j’ai bien compris ce que ça fait et comment ça marche, ça peut être très intéressant dans certains cas. Par rapport à Hugo, autant pour ce projet je pense que ça ne m’aurait pas servi à grand-chose (les difficultés sont dans le design, une fois fait c’est juste des fichiers markdown, rien que ne permet d’améliorer Gatsby à priori), autant je pense que pour ce projet ça aurait pu m’aider sur pas mal de points (notamment la gestion des images et la partie semi-dynamique).

SpaceFox

Alors je n’ai pas assez de recul etc. pour en parler… Mais en tout cas sur HN, il me semble qu’ils en parlent largement majoritairement en bien. C’est toujours qlq chose de rassurant.

Edit : finalement après reconsultation de HN, il y a quelques articles récents qui commencent à arriver et qui bash Gatsby… (e.g. https://news.ycombinator.com/item?id=24670252)

+0 -0

Dans l’idée avec les frameworks JS, tu peux faire ce que tu veux : export local (un fichier), intégration dans une appli mobile (via webview), appli de bureau (Electron/NW), front-end pour site web (bundle) ou même plugin JS.

Ok ça c’est bien Gatsby tout court.

Du coup concrètement, si je dois me servir de Gatsby ça suit cette logique :

  • Je génère les fichiers html css js dans leur répertoire ../public/ au lieu de les écrire à la main. Le seul intérêt c’est que Gatsby facilite d’une façon ou d’une autre le développement responsive et le développement multi-plateformes (bureau, web, plugin JS).

  • Je copie/colle ces fichiers dans ../public/ dans le répertoire adéquat de mon serveur OVH et voilà.

  • Il y a quand même leur argument comme quoi y a pas d’attaque DDOS possible etc.

C’est juste ça ?

HerbeQuiBenchEtSquat

Au vu des tutoriels disponibles sur le site comme ici c’est du React. Donc non tu écris bien ton code à la main HTML, CSS et JS. L’intérêt porte plutôt sur les composants annexes qui peuvent te simplifier la vie. Je te conseille de suivre un tuto React (ou Vue JS ou Angular) avant d’entrer dans Gatsby ; ça te donnera une meilleure approche des bundles webpack.

Principe de Webpack
Principe de Webpack

Pas d’attaque DDoS oui c’est sûr puis-ce que tout est rendu côté client ; après ce sont les API qui peuvent être attaquées (notamment si tu développes la tienne).

Ok bein merci j’vais continuer de me renseigner. J’avais pas capté que tout gatsby devait être uploadé sur mon serveur PHP OVH (ce qui du coup est impossible vu que c’est du js / nodejs). Je pensais que c’était juste le contenu du répertoire public (html css js), ce qu’il me semblait avoir lu dans la doc de gatsby.

Bizarre bizarre tout ça, même pour la génération des fichiers html css js à la main, certes ils ont des plugisn et tout, mais la base de Gatsby doit bien servir à qlq chose qd mm :/

Bref ça reste bien flou et de toute façon je vais laisser tomber gatsby. Je viens de parcourir plusieurs articles récents à son sujet, ils ne sont pas du tout, mais alors pas du tout élogieux… NextJS, plus ancien et moins hyped, est souvent cité (un peu plus positivement, mais significativement + tt de même).

J’avais pas capté que tout gatsby devait être uploadé sur mon serveur PHP OVH (ce qui du coup est impossible vu que c’est du js / nodejs). Je pensais que c’était juste le contenu du répertoire public (html css js), ce qu’il me semblait avoir lu dans la doc de gatsby.

HerbeQuiBenchEtSquat

Si tu peux. Tu as deux méthodes : soit tu crées le bundle sur ton PC et dans ce cas-là tu peux copier tout ce qui est dans public, soit tu git clone ton projet sur ton serveur et tu lances le build à ce moment-là (c’est ce que font de manière automatique les services serverless tel que Netlify).

D’ailleurs pour encapsuler un bundle dans une application mobile, il te faut bien l’avoir généré avant pour qu’il s’intègre. Tu dois exécuter deux commandes successives, le build Webpack et ensuite le build applicatif (en Java ou Objective C).

Bizarre bizarre tout ça, même pour la génération des fichiers html css js à la main, certes ils ont des plugisn et tout, mais la base de Gatsby doit bien servir à qlq chose qd mm :/

HerbeQuiBenchEtSquat

Bien sûr que la base sert à quelque chose ; elle te simplifie la vie sur l’intégration d’API, le routage, les données etc. Bien qu’il existe des dizaines d’offres du même genre, plus ou moins complète, plus ou moins gratuite. C’est que l’on appelle couramment un boilerplate, une pré-configuration qui permet de se lancer plus rapidement dans le code qu’on pourrait dire effectif.

+0 -0

J’utilise beaucoup Gatsby dans mon activité de développeur freelance couplé avec du CMS headless comme sanity ou prismic et c’est un bonheur de chaque instant pour ma part. Alors oui si on aime pas le JS, React c’est pas pour vous c’est certain. Mais à une époque où les performances sont très importantes pour les clients et les utilisateurs. Gatsby permet de générer des sites statiques très performant. La doc en plus et super bien rédigé, son écosystème de plugin est surtout vraiment bien foutu pour connecter à tout type de CMS (Wordpress, Sanity, Prismic, Dato etc…) et les e-commerces ne sont pas oubliés. Cela permet d’avoir une très grand flexibilité côté front et d’avoir des super perf. Je serais curieux d’avoir l’avis de personnes qui ont travaillé avec et qui en sont revenus déçu.


[EDIT] viki53 (10/11/2020 à 18h04) : suppression d’un lien publicitaire

+0 -0
Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte