Communitygithub.com

shakedal1/refonte-diaporama-cours

Reconstruisez un diaporama de cours, labo ou tutoriel ennuyeux ou confus (PDF ou PPTX) en un artefact Slides clair et engageant, avec analogies, exemples pratiques, quiz, dessins à côté des images originales, animations et commandes percutantes, en anglais, hébreu ou les deux.

Qu'est-ce que refonte-diaporama-cours ?

Cette compétence transforme un diaporama de cours sec et difficile à suivre en une présentation interactive et pédagogique, exploitant l'artefact Slides de l'agent AI. Elle est conçue pour Claude Code, Cursor et Codex, et prend en charge les diaporamas PDF et PPTX. La compétence lit d'abord l'intégralité du matériel source, identifie les faits, images et répétitions clés, puis planifie une structure d'enseignement autour d'un exemple concret récurrent. Chaque concept est associé à une analogie tirée de la vie quotidienne et des quiz sont insérés toutes les 4 à 6 diapositives. L'animation est obligatoire et minutieusement conçue pour révéler les informations progressivement, avec des transitions et des builds ciblés. Les commandes et extraits de code sont mis en évidence avec des puces visuelles distinctives. La compétence gère également la création de versions bilingues (anglais/hébreu), en respectant les règles de mise en page RTL pour l'hébreu. Elle inclut le recadrage des images des PDF et leur intégration dans le nouveau diaporama, ainsi qu'un rapport final listant les changements et les liens vers les decks créés.

Compatible avec~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/shakedal1/lecture-deck-remake/tree/HEAD

Demander à votre IA préférée

Ouvre une nouvelle conversation avec cette compétence d'agent déjà préchargée.

Documentation

Refonte de diaporama de cours

Transformez un diaporama de cours aride en un support dont les étudiants apprennent réellement. Le résultat est un diaporama réalisé à partir de l'artefact Slides (un par langue). Tout ce qui concerne le format des diapositives, les fichiers et la publication provient des instructions de ce type. Cette compétence ajoute par-dessus la conception pédagogique, les règles d'animation et de commandes, ainsi que la technique RTL pour l'hébreu.

Lisez references/patterns.md avant d'écrire la première diapositive. Ce fichier contient du balisage prêt à copier pour chaque modèle nommé ci-dessous.

1. Lire toute la source d'abord

  • PDF : Read avec pages par parties d'au maximum 20 jusqu'à avoir vu chaque page. PPTX : utilisez la compétence pptx pour extraire le texte et les images.
  • Pendant la lecture, listez : les sujets dans l'ordre, chaque commande ou extrait de code, chaque définition, chaque quiz ou question déjà présent dans le diaporama, et toutes les diapositives qui répètent la même capture d'écran avec un seul élément modifié. Ces diapositives répétées sont la première chose à fusionner.
  • Listez également toute image qui vaut la peine d'être conservée : photos, objets ou modèles réels, captures d'outils, et figures qui montrent quelque chose qu'un dessin à la main ne peut pas. Notez sa page et sa position approximative dans l'aperçu Read, car vous la recadrerez plus tard (§6).
  • Conservez chaque fait de la source : noms, dates, e-mails, notation, liens, indicateurs de commandes. N'inventez jamais de nombres, citations ou comportements d'outils que vous ne pouvez pas déduire de la source ou de la logique de l'exemple lui-même.

2. Planifier l'enseignement, puis construire

Énoncez le plan en une ligne à l'utilisateur et commencez. N'attendez pas d'approbation.

  • Un exemple fil rouge. Choisissez l'exemple de la source et donnez-lui une image physique concrète (un FSM one-hot 3 bits est devenu « un chasseur de lumière à 3 lampes »). Réutilisez-le sur chaque diapositive : les propriétés deviennent des questions simples à son sujet, les résultats sont expliqués en ses termes.
  • Une analogie par concept, tirée de la vie quotidienne, écrite en italique sur la diapositive à côté de la définition formelle (simulation vs formel = essayer 1 000 clés vs un serrurier qui prouve le mécanisme ; réinitialisation = « Nouvelle partie » ; horloge = métronome ; borne = café le plus proche dans une rue ; débogage « Pourquoi » = un détective qui remonte le temps).
  • Quiz toutes les 4 à 6 diapositives : prédire avant l'exécution, tracer à la main, « que se passe-t-il si on change X », vrai/faux. La réponse est une zone épinglée qui se dévoile en un clic ; mettez aussi la réponse dans les notes du présentateur.
  • Conservez les images de la source, et dessinez le reste. L'utilisateur souhaite voir les images pertinentes de l'original dans le diaporama. Ne les supprimez pas au profit de dessins. Pour chaque image de votre liste :
    • Si elle montre la même chose qu'un de vos dessins (une bande de résolution, une vraie fenêtre d'outil, une comparaison avant/après), utilisez l'image au lieu du dessin.
    • Si elle ajoute quelque chose qu'un dessin ne peut pas (une vraie photo, un vrai modèle 3D, un vrai jeu de données), placez-la à côté de votre dessin d'exemple fil rouge sur la même diapositive, avec une légende d'une ligne qui relie les deux.
    • Si elle est purement décorative ou répète une autre image, laissez-la de côté et mentionnez-la dans le rapport. Dessinez en SVG/divs (patterns.md) tout ce que la source exprime uniquement en mots : diagrammes d'état, formes d'onde, chronologies, droites numériques, constructions étape par étape de l'exemple fil rouge.
  • Une idée par diapositive, environ 20 à 26 diapositives. Utilisez le rythme : diapositives de déclaration sombres pour la couverture, chaque ouverture de section et le récapitulatif ; diapositives de contenu claires ; un fond de teinte chaude pour les diapositives de quiz.
  • Terminez par une antisèche : toutes les commandes dans l'ordre avec un glossaire de 2-3 mots, ainsi qu'un glossaire des termes clés.

3. L'animation est obligatoire, pas optionnelle

L'utilisateur a demandé plus d'animation. Chaque diaporama doit :

  • Mettre data-transition sur chaque section : fade pour la plupart, push pour entrer dans une nouvelle section, magic entre deux diapositives qui montrent le même diagramme dans deux états.
  • Donner à chaque diapositive de contenu au moins une séquence de construction : les éléments clés sont des enfants position:absolute avec data-build-in="<effet> <ordre>" pour qu'ils apparaissent un par un en mode Présentation. Les constructions ne fonctionnent que sur les enfants épinglés, donc les diapositives qui se révèlent étape par étape sont disposées avec left/top/width explicites.
  • Utiliser des constructions qui enseignent. Révélez un flux une étape à la fois (rise 1, rise 2, …), dessinez un diagramme d'état flèche par flèche (un SVG épinglé par groupe de flèches), parcourez un cycle de forme d'onde cycle par cycle, révélez l'analogie après la définition, et montrez les réponses du quiz en dernier.
  • Utiliser magic pour animer un changement : même id sur l'élément épinglé correspondant de deux diapositives consécutives (une lampe qui s'allume, un surlignage qui se déplace vers le cycle suivant, un intervalle de borne qui se rétrécit).
  • Varier les effets avec un but : rise pour les listes et les étapes, pop pour un résultat ou une vérification, left/right pour les éléments qui arrivent d'une direction, fade pour les annotations, scale pour la grande révélation. N'utilisez pas plus d'environ 6 constructions par diapositive.

4. Les commandes doivent sortir de la diapositive

L'utilisateur a demandé des commandes plus visibles. Chaque commande, indicateur, ou ligne Tcl ou shell utilise la puce de commande de patterns.md, et rien d'autre sur le diaporama ne lui ressemble :

  • Son propre bloc (<p>), jamais en ligne dans une phrase. Les spans ne peuvent porter que de la couleur, donc font-family sur un span est silencieusement ignoré.
  • Une police monospace (JetBrains Mono) en 32–40 px, gras. Fond de puce sombre, une couleur d'accent brillante réservée uniquement aux commandes, une barre d'accent épaisse sur le bord d'attaque, et un glyphe d'invite (% pour Tcl, $ pour le shell).
  • À côté de chaque puce, une courte étiquette indiquant ce qu'elle fait (« compiler », « tout prouver »).
  • Sur une diapositive d'étape, la puce de commande est la chose la plus grande après le titre, et elle se construit en premier.
  • Les listes de code (fichiers entiers) utilisent un style de carte de code séparé et plus discret pour que les commandes ressortent encore.

5. Langues

Si l'utilisateur demande deux langues, créez deux diaporamas séparés à partir du type, avec les mêmes identifiants de diapositive et contenu. Construisez d'abord la langue source (ou l'anglais), puis l'autre. L'hébreu nécessite la technique RTL de patterns.md : isolez chaque bloc de texte hébreu avec &#8295;…&#8297;, entourez le code en ligne dans l'hébreu avec &#8294;…&#8297;, utilisez text-align:right et des lignes row-reverse, inversez l'ordre des colonnes du tableau, utilisez ← dans les séquences, et isolez chaque ligne séparée par <br> séparément. Gardez le code, les puces de commande, les formes d'onde et les maquettes d'interface graphique de gauche à droite. Rubik couvre l'hébreu et le latin.

6. Construire et publier

Suivez les propres instructions du type Slides pour les fichiers et les appels, avec ces règles apprises par l'usage :

  • Écrivez project/deck.json (order, sections, faces complets) et la couverture, publiez, puis écrivez et publiez environ 4 diapositives par tour.
  • Une publication avec edits ne peut pas aussi transporter files. Modifiez avec l'outil Edit, puis publiez les fichiers.
  • Si une publication échoue avec une erreur réseau, renvoyez les mêmes fichiers. C'est sûr.
  • Recadrage des images source d'un PDF (faites cela avant d'écrire les diapositives qui les utilisent) :
    • Copiez le PDF dans son propre nouveau dossier dans le bloc-notes et écrivez les recadrages dans un dossier assets séparé.
    • Obtenez la taille de la page avec python -I -c "import pypdf,sys;print(pypdf.PdfReader(sys.argv[1]).pages[0].mediabox)" <pdf>. PyMuPDF et Pillow ne sont pas installés ici ; pdftoppm (MiKTeX) l'est. Ignorez son avertissement « requires Windows 10 ».
    • Recadrez directement depuis la page : pdftoppm -f N -l N -r 250 -x X -y Y -W W -H H -png -singlefile <pdf> <assets>/<name>. Les coordonnées proviennent de l'aperçu Read : échelle = (250 / 72) × largeur de page en pt / largeur de l'aperçu en px. Une page de 720 pt prévisualisée sur 1000 px de large donne ×2,5.
    • Read chaque recadrage une fois et corrigez ses bords avant de le télécharger : un fragment de l'image voisine est courant.
    • Divisez une bande de panneaux (par exemple une image à 7 résolutions) en un recadrage par panneau, afin que les panneaux puissent se construire un par un.
    • Téléchargez tous les recadrages en un seul appel : Artifact publish avec url, asset: true et file_paths (jusqu'à 25). Utilisez chaque /_blob/<id> retourné textuellement dans <img src>, avec object-fit:contain et une largeur/hauteur qui correspondent au rapport d'aspect du recadrage.
    • Depuis un PPTX, récupérez les images extraites par la compétence pptx, puis téléchargez-les de la même manière.
  • Budgetisez la hauteur : 824 px à l'intérieur des marges. Le bloc de titre fait environ 130 px, la ligne de tableau fait environ 2,1 × la taille de police par ligne, les zones épinglées doivent se terminer au-dessus de y 952. Raccourcissez le texte avant de le réduire, et gardez le texte à 24 px ou plus.
  • Ne rendez pas et ne capturez pas d'écran pour vérifier, sauf si l'utilisateur le demande.

7. Rapport

Donnez le lien de chaque diaporama, ce qui a changé par rapport à l'original (l'exemple fil rouge, les analogies, les illustrations, quelles images source ont été conservées, où, et lesquelles ont été laissées de côté, les quiz, les animations, le style des commandes, quelles diapositives répétitives ont été fusionnées), et ce que vous n'avez pas vérifié. Rappelez à l'utilisateur que les diaporamas sont privés jusqu'à ce qu'ils soient partagés.

Skills associés