Arborescence dossiers

IMPORTANT

Ce site web est un prototype en cours de construction, destiné à valider le code source généré par le logiciel Thot (version 0.0.1), projet personnel lui-même en phase de développement. Son contenu ainsi que son graphisme sont donc expérimentaux et n'ont de ce fait aucune valeur commerciale et/ou juridique. Pour obtenir plus d'information sur cet environnement, vous pouvez vous reporter à la page intitulée Questions fréquentes. Une page Facebook consacrée au projet peut par ailleurs être consultée. Un compte Twitter fournit des informations sur l'avancement du projet.

Comme la plupart des projets informatiques, un site web est structuré sous forme d'arborescence de dossiers. Les fichiers constituant les ressources du site y sont ensuite « rangés » en fonction de leur nature.

Même si les spécifications du W3C n'édictent pas d'organisation formelle en la matière, l'usage a toutefois normalisé de fait un certain nombre de dossiers que l'on retrouve classiquement sur la quasi majorité des sites web, ainsi :

Bien qu'elle soit a priori logique et largement utilisée, cette approche arborescente pose toutefois problème lorsqu'un ou plusieurs dossiers doivent être renommés ou déplacés. Dans ce cas, en effet, tous les liens existant entre les ressources doivent être vérifiés avec soin et actualisés si nécessaire. Cette tâche, chronophage et d'un attrait tout relatif peut, en outre, s'avérer aléatoire si elle est effectuée de façon manuelle.

Cette problématique n'a pas seulement pour effet de créer des liens hypertexte potentiellement « brisés », elle impacte également certaines fonctionnalités connexes, telles que la CSP (Content Security Policy). Basée sur une liste blanche des ressources qu'un navigateur web sera autorisé ou non à télécharger, celle-ci est particulièrement sensible à toute modification apportée à l'arborescence des ressources.

Le générateur Thot gomme toute ces difficultés en recalculant de façon automatique l'ensemble des liens hypertexte liant les ressources entre elles. Il actualise par ailleurs toutes les dépendances liées à la sécurité ou autres.

Lors de la sérialisation, Le générateur tient également compte du contexte. En effet, pour une page HTML standard, les liens seront déterminés par référence à la balise <base> définie dans la section <head>, alors que pour une page de type AMP, ce calcul sera opéré différemment, la balise en question n'étant tout simplement pas disponible puisque non autorisée par les spécifications AMP.

Image bouton cliquable permettant le retour en haut de page