Contribution
Comment ajouter une page de cours, de TD ou de TP au site, et la publier.
Une page du site = un fichier .mdx dans content/ + un PDF dans public/pdf/.
Tout le reste (sidebar, recherche, sommaire, accueil, cloche de nouveautés 🔔) se met à jour au build.
Ajouter une page de cours
Crée le fichier dans le bon semestre et la bonne matière, par ex.
content/s3/architecture-reseau/ch6-ipv6.mdx, avec son front matter :
---
title: "Ch. 6 — IPv6"
description: "Une phrase de description : elle sert aux cartes d'accueil et à la recherche."
---Rédige le résumé en markdown. Le titre (title) s'affiche déjà en haut de page :
commence directement par un ##.
## L'essentiel
R3.04 **Qualité de développement**…Ajoute le PDF dans public/pdf/, en recopiant la hiérarchie de content/ :
public/pdf/<semestre>/<matière>/<page>.pdf (ex.
public/pdf/s3/architecture-reseau/ch6-ipv6.pdf).
Puis, en bas de page, affiche-le avec le composant dédié (consultation seule, sans téléchargement — voir la licence) :
import { PdfCard } from "../../../src/components/pdf-card";
<PdfCard file="s3/architecture-reseau/ch6-ipv6.pdf" source="cours_ar_ch6.pdf · 40 diapositives" />Le chemin d'import est relatif : ../../../src/… depuis un dossier de matière.
Tant que le PDF n'est pas posé, n'ajoute pas le composant — pas de page
incomplète laissée à moitié.
Déclare la page dans le meta.json du dossier (ordre de la sidebar) :
{ "title": "Architecture réseau", "defaultOpen": true, "pages": ["ch6-ipv6"] }Ajoute une carte sur l'accueil (content/index.mdx), dans le bon semestre :
<Card
href="/s3/architecture-reseau/ch6-ipv6"
title="Architecture réseau — Ch. 6 : IPv6"
description="Une phrase de description."
/>Vérifie et publie :
bun run dev # vérifier localement sur http://localhost:3000
bun run build # build statique dans dist/public
git commit -am "Ajout du cours Ch. 6 — IPv6"
git pushCréer une nouvelle matière ou un nouveau semestre
Copie un dossier existant (avec son meta.json) et adapte title et pages. Le
meta.json de content/ liste les semestres dans l'ordre de la sidebar.
Syntaxe disponible
Le contenu est du MDX : du markdown classique (titres, tableaux, listes, blocs de
code avec ```java title="…" et coloration Shiki) + des composants Fumadocs :
| Besoin | Composant |
|---|---|
| Encart (info, astuce, avertissement, erreur) | <Callout type="info | tip | warn | error" title="…"> |
| Étapes numérotées | <Steps> / <Step> |
| Cartes | <Cards> / <Card href title description> |
Imports à mettre en haut du fichier :
import { Callout } from "fumadocs-ui/components/callout";
import { Step, Steps } from "fumadocs-ui/components/steps";
import { Card, Cards } from "fumadocs-ui/components/card";Règles avant de publier
- Pas de contenu protégé en dehors du cadre décrit dans la licence : les PDF restent ceux de l'IUT de Lille.
- Tout en français, descriptions courtes (elles alimentent la recherche).
- Un commit par page, message explicite.
Dernière mise à jour le