Cours BUT Info

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 push

Cré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 :

BesoinComposant
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

Sur cette page