Faramaz Patrick
🧑🏽💻 Senior freelance front developer | React, Gatsby, Nuxt, Node, Vue JS, TS, JamStack, Wordpress. Opquast certified, a11y. |🎙 Podcaster slash-podcast.fr |
Dans la jungle de la jamstack !
Développeur depuis 15 ans
Indépendant depuis 5 ans
Co-présentateur du podcast Double Slash
Expert front JS - React - Vue - Next.js - Nuxt.js - ...
Le côté dynamique de la page est géré par JavaScript
Les opérations côté serveur sont remplacées par des API
Les sites sont servis sous forme de fichier HTML statique
En gros, le site est composé de fichiers HTML statiques avec du JavaScript pour dynamiser tout ça
*Pour rappel, le web c'est juste du HTML et des liens
Aujourd'hui, tout est automatique !
Fini FrontPage, Dreamweaver, FTP....
🤷🏽♂️
Beaucoup de sites ont un contenu avec une fréquence d'update espacée.
Faire tourner un serveur PHP (ou autre) pour générer une page web qui ne change pas est un non-sens.
*oui, on peut ajouter un système de cache pour éviter ça.
😰
DX ! Meilleure expérience pour les développeurs.
Écosystème varié et outils de développement qui facilitent la vie !
🔥
Les pages du site et les assets sont servis à partir d’un CDN
Plus besoin de se soucier des vulnérabilités du serveur ou de la base de données
L’hébergement de fichiers statiques est moins cher, voire gratuit
Si votre site est soumis à un pic d’activité, le CDN compensera sans problème.
Les éléments du site sont optimisés au déploiement automatiquement
Le code source est centralisé sur GitHub ou GitLab en sécurité.
🌧
Vendre la jamstack a un client demande de la pédagogie
Pas forcement adapté à tous les projets:
🤯🤪😨
Écosystème de la jamstack
Le plus simple !
Pour des sites simples, les offres "free" suffisent souvent
Sinon comparer les prix et le plus compatible avec le générateur.
Ça dépend, ça dépasse
Les générateurs de fichiers HTML statiques
Points forts :
Par contre :
Les générateurs d'applications statiques
Points forts :
optimise tout automatiquement (chunk js, images, etc..)
agrégation des data
expérience des visiteurs améliorés
Par contre :
Les générateurs d'applications statiques
🏝
Points forts :
on utilise son FW habituel (React, Vue, Svelte)
optimise tout automatiquement (chunk js, images, etc..)
site rapide/vitesse de chargement
expérience des visiteurs améliorés
Par contre :
Pas de réponse simple.
Quel est le besoin ?
Quelle techno je maîtrise ?
Faut-il un mode preview ?
...ou pas !
Le contenu sous forme de fichiers
.md, .mdx, .json, .yaml
---
title: Le prologue
subtitle: Présentation du podcast et de l'équipe
publicationDate: 2020-04-01
url: https://chtbl.com/tr....
status: published
....
categories:
- Technology
---
Le premier épidode double slash, l'épisode "Pilote", qui présente l'équipe et le podcast.
Pourquoi un podcast, quels sujets allons-nous développer et les thèmes principaux du podcast.
....
Avantages :
Inconvénients :
Edition du contenu :
Dato CMS, Prismic, StoryBlock, Contentful,...
Avantages :
Inconvénients :
WordPress, Strapi, Craft CMS...
Avantages :
Inconvénients :
Pas de réponse simple.
Quel est le besoin ?
Qui va gérer le contenu ?
Faut-il un mode preview ?
Faut-il enregistrer des data ?
☝️
la modification du code source sur GitHub déclenche un hook chez Netlify
ou
la modification du contenu sur le CMS notifie Netlify via un webhook
Exemple avec Netlify:
Netlify relance un process de deploiement
La nouvelle version du site est en ligne
Pour un formulaire de contact, Netlify propose un système pour gérer l'envoi
Utiliser une fonction serverless pour gérer le traitement du formulaire
Utiliser un service externe pour gérer le traitement du formulaire (formspree,..)
Intégrer un formulaire d'un service externe (hubspot)
ou
ou
ou
Utiliser le système de recherche de votre CMS
Utiliser un service externe
type Algolia
Utiliser un système self-hosted
type meilisearch
ou
ou
Possible uniquement sur les générateurs de web app
On crée des pages avec un système de middleware qui contrôle l'accès. Et surtout, on génère le contenu des pages uniquement côté client !
Avec la génération incrémentale !
Pourquoi ?
Problème de déploiement à cause du poids du site
Avec certains frameworks
NextJS, Gatsby
Avec certains hebergements
Gatsby Cloud
Avec certains CMS
ou
ou
Avec un service Headless
Shopify, BigCommerce..
et
je développe mon site from scratch ou avec une solution type Vue Storefront
Intégration d'une solution type SnipCart
ou
🤘
https://twitter.com/PatrickFaramaz
https://slash-podcast.fr
By Faramaz Patrick
Explication sur les modes de fallback
🧑🏽💻 Senior freelance front developer | React, Gatsby, Nuxt, Node, Vue JS, TS, JamStack, Wordpress. Opquast certified, a11y. |🎙 Podcaster slash-podcast.fr |