Contexte
Actuellement, quand tu generes un script avec des programmes CUSTOM_INSTALL, le JS fait des fetch() vers /programs/<slug>/custom_install/install.sh. Ca marche, mais :
- Le site n'est pas 100% offline — la generation necessite le reseau
- Chaque
install.sh genere une requete HTTP separee (latence cumulative)
Solution proposee
Au build Hugo, injecter tous les install.sh dans le HTML de la page generateur sous forme de map JavaScript. Puis dans ScriptGenerator, utiliser cette map au lieu de fetch().
Benefices
- Generation de script 100% offline
- Plus rapide (zero latence reseau)
- Fidele a la promesse "Everything runs in your browser" (le fetch actuel la contredit techniquement)
Trade-off
La page HTML serait plus lourde (~100-200 KB pour 161 scripts customs), mais acceptable pour un outil desktop-first.
Implémentation
Dans layouts/setup-generator/single.html, ajouter une boucle Hugo qui lit tous les install.sh et les injecte dans un objet JS. Modifier _get_custom_install() pour utiliser cette map au lieu de fetch(). Fichiers concernés : single.html, script-generator.js.
Contexte
Actuellement, quand tu generes un script avec des programmes
CUSTOM_INSTALL, le JS fait desfetch()vers/programs/<slug>/custom_install/install.sh. Ca marche, mais :install.shgenere une requete HTTP separee (latence cumulative)Solution proposee
Au build Hugo, injecter tous les
install.shdans le HTML de la page generateur sous forme de map JavaScript. Puis dansScriptGenerator, utiliser cette map au lieu defetch().Benefices
Trade-off
La page HTML serait plus lourde (~100-200 KB pour 161 scripts customs), mais acceptable pour un outil desktop-first.
Implémentation
Dans
layouts/setup-generator/single.html, ajouter une boucle Hugo qui lit tous lesinstall.shet les injecte dans un objet JS. Modifier_get_custom_install()pour utiliser cette map au lieu defetch(). Fichiers concernés :single.html,script-generator.js.