Structure du dépôt
Une instance vanityURLs garde les fichiers détenus par le produit séparés des fichiers détenus par l’instance. C’est ce qui rend npm run upgrade pratique : upstream peut rafraîchir defaults/ et scripts/, tandis que vos liens, votre marque, vos choix de politique et vos réglages Cloudflare restent sous votre contrôle.
Le dépôt public v8s.link suit cette structure :
- package.jsonscripts npm et dépendances
- package-lock.jsongraphe de dépendances verrouillé
- wrangler.tomlréglages de déploiement Cloudflare Worker
- defaults/base produit rafraîchie par upgrade
- public/pages, assets, badges, pages d'état et headers par défaut
- _headersheaders cache et no-index des assets statiques
- robots.txt
- style.css
- script.js
- v8s-links.txtinventaire de liens et horaires inline de départ
- v8s-policies.jsonpolitique trust-and-safety par défaut
- v8s-blocklist-categories.jsonlibellés de catégories de politique
- v8s-language-metadata.jsonlibellés de pages générées localisées
- legal/contenu légal et confiance généré par défaut
- v8s-legal-content.json
- v8s-site-config.jsonlangues, marque et valeurs opérateur par défaut
- v8s-local-config.jsonréglages par défaut du helper local
- custom/surcharges propres à l'instance
- public/marque, pages, assets et headers de l'instance
- _headers
- robots.txt
- style.css
- script.js
- v8s-links.txtsource de vérité humaine des liens
- v8s-site-config.jsonlangues, marque, valeurs opérateur et contacts
- scripts/outillage produit
- workers/source canonique du Worker et tests
- worker.mjs
- worker.test.mjs
- lnkCLI pour liens, horaires et politique
- build.mjsbuild defaults plus custom vers la sortie de déploiement
- setup.mjsnpm run setup
- upgrade.mjsnpm run upgrade
- local-install.mjssetup du helper local
- v8s.shhelper local en lecture seule
- src/entrée Worker générée depuis scripts/workers
- worker.mjs
- build/sortie de déploiement générée
- v8s.jsonregistre runtime de redirection
- v8s-blocklist.jsonartefact runtime de politique
- v8s-site-config.jsonconfiguration runtime du site
- _headers
- index.html
- _stats/shell stats protégé
- index.html
- _tests/page de test runtime protégée
- index.html
- en/pages publiques et assets localisés
- index.html
- 404.html
- expired.html
- disabled.html
- maintenance.html
Defaults produit
defaults/ est la base produit. Il contient les pages publiques, pages d’état localisées, badges de redirection, pages de politique, icônes, shell stats protégé, liens de départ, horaires inline de départ, politique par défaut, configuration de site et defaults du helper local.
scripts/ est l’outillage produit. Modifiez-le seulement lorsque vous changez vanityURLs lui-même. Les opérateurs d’instance reçoivent normalement les mises à jour de ce répertoire avec npm run upgrade.
Fichiers d’instance
custom/ appartient au propriétaire de l’instance. Placez ici les liens, assets de marque, pages surchargées, configuration de site, configuration du helper local et remplacement de politique.
Le build préfère custom/v8s-links.txt lorsqu’il existe. Sinon, il utilise defaults/v8s-links.txt, ce qui permet à un clone frais de produire une instance de départ fonctionnelle.
custom/v8s-policies.json remplace la politique par défaut lorsqu’il est présent. Il ne fusionne pas avec defaults/v8s-policies.json; les décisions de politique custom retirées ne devraient pas réapparaître par une fusion des defaults.
wrangler.toml appartient aussi à l’instance. Il définit le nom du Worker, la route ou le domaine personnalisé, la commande de build et le domaine d’équipe Cloudflare Access.
Sortie générée
build/ et src/ sont générés. Ne les modifiez pas à la main.
build/v8s.json est le registre runtime de redirection. Il contient les cibles normalisées, le tree schéma 3.0, les règles de routage, états de cycle de vie, métadonnées, timestamps générés et blocs de planification optionnels.
build/v8s-blocklist.json est l’artefact de politique runtime consommé par le Worker. Il est généré depuis la source de politique sélectionnée et les données optionnelles de flux générés.
build/v8s-site-config.json garde la configuration de site utilisée pour le build, incluant les langues supportées, la marque, l’information opérateur et les réglages de contact.
build/v8s-release-manifest.json consigne la version du package de release, le commit Git, les versions de schéma, la date de compatibilité Cloudflare et les hashs SHA-256 des entrées et sorties de release.
src/worker.mjs et src/lib/analytics-policy.mjs sont générés pendant npm run build pour que Wrangler puisse déployer le Worker et ses modules de support. La source de vérité est scripts/workers/. npm run clean retire build/, src/ et les anciennes sorties de compatibilité.