1Introduction
Une rubrique de fiches est une rubrique générale du sous-site: un module de données porte une entrée par sujet, et chaque entrée devient une page. Les ingrédients ouvrent la voie sous /ingredients/; les rubriques suivantes se déclarent de la même façon.
Ce document spécifie ce flux de bout en bout: déclaration d'une rubrique, structure des données, rangement des photos, rendu des pages et liaison avec les recettes. Les règles de contenu d'une fiche — gabarit des blocs, sosie dangereux, sources — vivent dans Cooking — Projet — Prompt §5 et ne sont pas redites ici.
2Déclarer une rubrique
Une rubrique se déclare dans Cooking — Settings.js, rubrique fiches. Chaque entrée de cette rubrique nomme le chemin publié, le module de données et le titre affiché.
| Clé | Rôle |
|---|---|
| chemin | Segment d’URL, sans accent ni majuscule — /ingredients/ |
| module | Nom du module de données, sans horodatage — Cooking - Ingredients |
| titre | Intitulé affiché, accentué — Ingrédients |
| accroche | Une ligne, rendue en tête de l’index de rubrique |
Ajouter une rubrique, c'est ajouter un module et son entrée de réglage. Aucun document nouveau n'est requis: la présente spécification vaut pour toutes les rubriques de fiches, quel qu'en soit le sujet.
Chaque rubrique publie un index sous son chemin, qui liste ses entrées par ordre alphabétique du nom et porte son accroche. Les pages d'entrée vivent sous ce même chemin.
3Module de données
Le module exporte ses entrées. Il porte un horodatage dans son nom, comme tout module de données du projet, et devient la source de vérité de sa rubrique.
3.1Structure d’une entrée
| Champ | Type | Rôle |
|---|---|---|
| id | chaîne | Identifiant stable, sans accent — safran. Sert d’URL, de nom de dossier photo et de clé de référence depuis les recettes |
| nom | chaîne | Nom affiché, accentué — Safran |
| latin | chaîne | Nom scientifique, quand il existe. Absent sinon |
| alias | tableau | Autres appellations, pour la recherche et les renvois |
| famille | chaîne | Regroupement de la rubrique — épices, herbes, viandes |
| accroche | chaîne | Une ligne qui dit le caractère du sujet, rendue sous le titre |
| nature | texte | Bloc « Ce que c’est » |
| formes | tableau | Une entrée par forme du commerce — voir §3.2 |
| usage | texte | Bloc « À l’usage » : dosage, préparation, conservation |
| sosie | texte | Avertissement de confusion dangereuse. Absent quand il n’y a pas lieu |
| sources | tableau | Une entrée par adresse ou marque — voir §3.3 |
3.2Formes
| Champ | Rôle |
|---|---|
| cle | Identifiant de la forme, sans accent — fils, poudre, fleur |
| nom | Libellé affiché — Fils |
| texte | Ce qu’on juge à l’œil, ce qui s’y falsifie, ce qu’elle vaut en cuisine |
| photo | Extension du fichier attendu sous le dossier de l’entrée. Absent : la forme se rend sans image |
3.3Sources
| Champ | Rôle |
|---|---|
| nom | Marque, enseigne ou type de commerce |
| ou | Lieu ou canal — une ville, un quartier, un site |
| texte | Ce qu’on y trouve et ce qu’on y vérifie |
| eviter | Booléen. À true, l’entrée est rendue comme une mise en garde et non comme une adresse |
Aucune source n'est rémunérée ni sollicitée — Cooking — Projet — Prompt §5.5. La note de non-rémunération ouvre le bloc sur chaque page; le générateur la pose, elle n'est pas portée par les données.
4Photos
Les photos sont fournies par l'auteur. Elles vivent sous le dossier de l'entrée, dans le chemin de la rubrique, et portent le nom de la forme qu'elles montrent.
/ingredients/safran/safran-fils.jpg /ingredients/safran/safran-poudre.jpg /ingredients/safran/safran-fleur.jpg
Le nom se compose de l'id de l'entrée et de la clé de la forme. Le format suit la photo, jpg ou png. Une forme déclarée sans fichier correspondant se rend sans image et la passe le signale en fin de traitement: l'absence d'une photo n'arrête jamais la publication, mais elle ne passe pas non plus en silence.
5Rendu d’une fiche
La page reprend les blocs du gabarit dans l'ordre fixé au Prompt §5.3. Le titre de la page est le nom de l'entrée; le nom latin et l'accroche le suivent.
| Bloc | Source | Rendu |
|---|---|---|
| Identité | nom, latin, accroche | Titre de page, nom scientifique en italique, accroche en tête |
| Ce que c’est | nature, sosie | Texte courant ; l’avertissement de sosie se rend en encadré, avant le reste du bloc |
| Formes | formes | Une sous-partie par forme, photo à côté de son texte |
| À l’usage | usage | Texte courant |
| Où j’achète | sources | Note de non-rémunération, puis les adresses ; les entrées à éviter fermant le bloc |
Les termes du glossaire sont détectés dans le texte des fiches comme dans les documents, et mènent au glossaire du sous-site. Les pages de fiches ne sont pas signées, comme toutes les pages web du projet.
6Liaison avec les recettes
Une recette cite un ingrédient par son id. Le générateur résout l'id contre le module de la rubrique et pose le lien vers la fiche; le nom affiché vient des données, jamais du texte de la recette.
Un id introuvable arrête la passe en nommant la recette et l'id fautif. Une fiche sans recette qui la cite est normale: les rubriques de référence existent pour elles-mêmes autant que pour les recettes.
7Publication
Les pages de fiches sont produites par le générateur de site, dans la même passe que les pages de documentation, et entrent dans l'archive de déploiement — Cooking — Documentation — Pipeline HTML §5. Elles ne passent pas par la conversion des documents: leur source est le module, pas un .docx.
| Production | Chemin |
|---|---|
| Index de rubrique | /ingredients/index.html |
| Page d’entrée | /ingredients/safran.html |
| Photos | /ingredients/safran/ |
Aucun PDF n'est produit pour les fiches: l'imposition en livret est propre aux recettes. Une fiche se lit à l'écran, avant l'achat ou pendant la lecture d'une recette.