Bonjour à vous,
en tant que professeur de physique, j'aime bien utiliser la page d'accueil du site https://manytinythings.github.io/ pour illustrer la modélisation des états de la matière (les 3 premiers scripts).
Néanmoins, j'aimerais pouvoir en disposer en local, pour parer à toute éventualité (site retiré, ou accès internet HS le jour ou j'en ai besoin).
Je pensais que ce serait facile, comme c'est une page github.io : j'ai récupéré la source, et modifié les chemins des 2 fichiers js (canvas.js & functions.js) dans l'entête du fichier index.html :
/assets/… → ./assets/…
Et là c'est le drame : ça ne marche pas du tout.
les outils du développeur de firefox m'indiquent principalement 1 erreur dans le fichier functions.js:
Uncaught TypeError: v2 is not a function
cette erreur n'apparaît pas sur le site github pages, et pourtant les fichiers js sont strictement identiques (j'ai l'erreur même si je fait pointer mon index.html local vers les js du site github).
pour ce que ça vaut, une recherche dans le fichier functions.js m'indique que v2 est bien défini (à la ligne 640)
Bref, n'y connaissant rien en javascript, j'en fait appel à votre expertise.
# [HS] Gravitation
Posté par ǝpɐןƃu∀ nǝıɥʇʇɐW-ǝɹɹǝıԀ (site web personnel) . Évalué à 3 (+0/-0).
Sur la première animation, la gravité de la planète me paraît monstrueuse eu égard au gradient vertical de densité. Ça sent les unités réduites. Me tromperais-je ?
NB : je n'y connais rien au javascript…
« IRAFURORBREVISESTANIMUMREGEQUINISIPARETIMPERAT » — Odes — Horace
[^] # Re: [HS] Gravitation
Posté par hugotrip . Évalué à 2 (+0/-0).
Bien vu pour le gradient de densité. C'est aussi une des raisons qui me fait utiliser ce site : on peut ainsi assez bien faire voir aux élèves que mêmes les gaz subissent les effets de la gravité (mais eux ne voient pas spontanément ce gradient de densité).
Pour ta question sinon, je ne suis pas qualifié pour y répondre.
# Le chemin
Posté par Fernando . Évalué à 2 (+1/-0).
Tu ouvres sans doute le fichier index.html directement dans Firefox, donc tu es en protocole file://.
Tu devrais peut être mettre "assets/…" et non "./assets/…" pour le chemin de tes fichiers Javascript qui ne sont probablement pas chargés, et du coup, la fonction v2 manque alors qu'elle est appelée dans du code Javascript dans le corps du HTML.
Idem avec le fichier CSS (style.css).
[^] # Re: Le chemin
Posté par Cyril Brulebois (site web personnel) . Évalué à 3 (+1/-0).
(Kyo n'a rien à voir dans l'histoire…)
Le changement trivial est suffisant.
En revanche, le fait d'avoir un
index.htmlexplicite en fin d'URL casse la logique de détermination de « où sommes-nous ? ».Une option serait de modifier le code pour autoriser ce cas de figure (mais flemme de patcher du JS), une autre option est de faire pointer un serveur web vers le dépôt, et de compter sur la fonctionnalité d'index automatique pour résoudre le souci. J'avais un
lighttpdsous la main, et ceci suffit pour avoir unhttp://localhost/fonctionnel :Debian Consultant @ DEBAMAX
[^] # Everything in its right place
Posté par hugotrip . Évalué à 2 (+0/-0).
(si Kyo est exclu, peut-être que Radiohead…)
Je confirme qu'écrire "assets/…" ou "./assets/…" fonctionne tout aussi bien/mal (J'avais effectivement fait de même pour le CSS, ce qui me permettais de vérifier la validité de ma méthode, mais n'en avais pas parlé, car pensais que c'était HS).
C'est semble-t-il exactement le problème, même si je ne comprends pas où ça se joue : l'URL https://manytinythings.github.io/index.html casse effectivement aussi le JS avec la même erreur.
Merci pour la solution du serveur web qui n'est pas ma solution préférée, car je fais en général mes cours dans un environnement "hostile" (Windows en simple utilisateur), et je n'ai pas envie de voir s'il est possible de mettre en place un serveur web rapidement en utilisateur sous Windows pour un point de cours qui ne me prendra que 5-10 minutes.
Tu en as déjà fait bien assez pour moi avec tout ce que tu as mis en place pour ton message, merci bien.
Étant une bille en JS, j'ai "patché" à la Rache : j'ai retiré tout le début du JS consacré à la navigation du site, et en retirant tout ce qui est avant la définition de la fonction Pool (l.611), ça fonctionne pour ce qui est mon besoin : je peux montrer mes trois états de la matière :).
# c'est du ruby...
Posté par BAud (site web personnel) . Évalué à 6 (+4/-0). Dernière modification le 25 février 2026 à 14:57.
le code est ici :
https://github.com/ManyTinyThings/ManyTinyThingsWeb
le code adapté pour https://manytinythings.github.io/ est sur :
https://github.com/ManyTinyThings/ManyTinyThings.github.io
de fait, c'est peut-être plus simple à déployer que LinuxFr.org mais il va te falloir du Ruby on Rails ;-)
c'est expliqué ici :
https://github.com/ManyTinyThings/ManyTinyThingsWeb/blob/master/Gemfile
tu n'es pas à l'abri d'avoir l'intégralité en full-web (mais avec les bons chemins)
[^] # Re: c'est du ruby...
Posté par hugotrip . Évalué à 2 (+0/-0).
En fait Ruby est utilisé pour faire fonctionner jekyll qui est un générateur de site statique : si je ne dis pas de bêtise le code de https://github.com/ManyTinyThings/ManyTinyThingsWeb est traité par Jekyll puis publié dans https://github.com/ManyTinyThings/ManyTinyThings.github.io.
Comme indiqué sur le site de Jekyll les pages github.io sont générées ainsi, mais elles sont statiques.
Comme l'indique Cyril Brulebois dans le fil au-dessus, ce qu'il me manquait pour faire fonctionner le site github.io "out of the box", c'est un serveur http. Mais je cherchais une solution avec juste un fichier html.
Merci quand même pour avoir creusé mon problème.
Envoyer un commentaire
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.