Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Expérimentation sur la rapidité des pages de doc #778

Merged
merged 58 commits into from
Feb 2, 2023
Merged

Conversation

laem
Copy link
Contributor

@laem laem commented Dec 14, 2022

🎮 https://pages-doc-rapides--nosgestesclimat.netlify.app/documentation/alimentation/plats

L'idée, c'est de précharger une version "statique", au sens on n'a pas encore parsé les règles du moteur, des pages doc et de déclencher la page complète qu'au clic sur un bouton. On cible surtout Google, mais aussi les utilisateurs qui se contenteront de la description (faible intérêt).
C'est une alternative basique au server-side rendering. Ce dernier nous imposerait d'avoir un serveur, ou de migrer vers un framework complet genre Next (#801), avec une gestion de la réhydratation pas forcément triviale.
On notera que pour google, la seule information vraiment perdue ici c'est les liens vers les autres pages, qu'on pourrait éventuellement recréer de notre côté

Base

  • tester une page doc basique sans écrire trop de code
  • afficher la formule en version brute
  • indiquer qu'il y a des conditions qui peuvent s'appliquer au calcul / quid des attributs autres que formule ?
  • rendre le yaml affiché plus beau
  • comment faire des liens vers les formules, important pour le SEO ?
  • Attention, ça ne marche pas pour les expression qui ne sont pas juste des variables, genre Formule:(logement . empreinte chauffage air * gain rénovation) / habitants à noter en issue ----> je mitige ce problème en affichant la liste des règles de l'espace de nom, tout en bas
  • pourquoi la désambiguation de transport . empreinte ne marche pas ? http://localhost:8080/documentation/bilan
  • expliquer que c'est un "aperçu" qui sera complété au clic

Résultat

Très significative amélioration de la performance des pages doc. Peut-être de quoi nous faire gagner beaucoup en SEO ?

image
image

Qu'en pensez-vous @Clemog @EmileRolley ?

Encore mieux niveau perf

On pourrait même aller plus loin et ne télécharger d'abord qu'une liste complète des noms de règles, sans leurs corps, juste pour savoir quelle page est sensée exister. Ensuite, sur la page, ne télécharger que le corps de la règle pertinente, par exemple via une fonction netlify. On voit dans la capture que pendant trois frames on attend le téléchargement des règles.

image

À mettre en lien avec le besoin de réhydrater les règles compressées par #791. Cette liste est suffisante pour savoir ce qui existe.

Avec cette optim', le besoin de server-side rendering pourrait devenir bien plus faible.

@laem laem changed the title Test Expérimentation sur la rapidité des pages de doc Dec 14, 2022
@netlify
Copy link

netlify bot commented Dec 14, 2022

Deploy Preview for nosgestesclimat ready!

Name Link
🔨 Latest commit 96676f4
🔍 Latest deploy log https://app.netlify.com/sites/nosgestesclimat/deploys/63dbe893f7b7460008918019
😎 Deploy Preview https://deploy-preview-778--nosgestesclimat.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify site settings.

@github-actions
Copy link

github-actions bot commented Dec 14, 2022

Report for the pull request #778


🌐 Translation status

UI's texts

Language Nb. missing translations Status
❌ Missing �[31m5�[0m en-us translations for �[33mtrue�[0m!

FAQ's questions

Language Nb. missing translations Status
❌ Missing �[31m14�[0m en-us translations for �[33mtrue�[0m!

You will find more information about the translation in the dedicated file.

@laem
Copy link
Contributor Author

laem commented Jan 2, 2023

La question qu'entraîne cette PR à mon avis est : faut-il passer à Next pour la génération de la doc ? (pour tout le site ?)
On rendrait alors la page avec le moteur côté serveur, et ensuite une réhydratation permettrait d'injecter les valeurs de l'utiliser, au clic (pour éviter de lui imposer le parsing du moteur).

CF #801, j'ai ma réponse : dans un second temps, peut-être un jour.

@EmileRolley
Copy link
Contributor

Les gains de performance semblent très prometteurs 🥇

On a un problème étrange sur transport . empreinte dans bilan, je
pige pas pourquoi la désambiguation ne marche pas.
@laem
Copy link
Contributor Author

laem commented Feb 1, 2023

Recording 2023-02-01 at 20 14 30

@laem laem merged commit 9cfe1d0 into master Feb 2, 2023
@laem laem deleted the pages-doc-rapides branch February 2, 2023 17:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants