FLASHY — QUESTIONS FLASH AU COLLÈGE (6ᵉ · 5ᵉ · 4ᵉ · 3ᵉ)

DEUX FICHIERS, DEUX USAGES

1) VERSION AVEC DOSSIER DE DONNÉES
   • Flashy - questions flash.html
   • flashy-data/          ← les questions et les progressions, en .json
   Ouvre le .html d'un double-clic, puis donne-lui les questions une fois
   pour toutes (voir ci-dessous). C'est la version à choisir si tu veux
   pouvoir corriger les questions dans un éditeur de texte.

2) VERSION AUTONOME
   • Flashy (autonome).html
   Un seul fichier, questions incluses : tu double-cliques et tout est là,
   dans n'importe quel navigateur. Pratique pour l'envoyer à un collègue,
   l'ouvrir sur une clé USB, ou si tu ne veux jamais t'occuper de fichiers.
   Elle se régénère avec « node outils/construire-autonome.js » après toute
   modification du code ou des questions.

LE POINT DE DÉPART
L'onglet « Générateur » est celui qui s'ouvre en premier. Le bouton
« 🎲 Générer les 5 questions » — le chiffre suit ce que tu as réglé — tire la
séance du jour. Sur chaque carte, deux boutons : l'œil montre la réponse de
cette carte seule, et ↻ retire une autre question à sa place sans toucher aux
quatre autres. Pratique quand une question tombe mal.

À la toute première ouverture, un écran d'accueil te demande où sont les
questions : « Désigner le dossier flashy-data » sous Chrome ou Edge, sinon
« 📂 Charger » avec l'archive. C'est la seule fois où la question se pose.

DONNER SES QUESTIONS À FLASHY
Une page web ouverte au double-clic n'a pas le droit d'aller lire les
fichiers posés à côté d'elle : le navigateur le lui interdit, et aucune
astuce n'y change rien. Il faut donc le lui autoriser une fois, et il y a
deux manières de le faire.

   Synchroniser (deux flèches vertes en rond) — tu désignes le dossier
   flashy-data.
      • Sous Chrome et Edge, Flashy le lit ET peut y écrire : à partir de
        là, « 💾 Sauvegarder » enregistre directement dans le dossier, sans
        archive à décompresser. Le dossier est retenu d'une fois sur
        l'autre. C'est le mode confortable.
      • Sous Firefox et Safari, Flashy peut lire le dossier mais pas y
        écrire : la sauvegarde restera une archive .zip.

   📂 Charger — tu choisis une archive de sauvegarde .zip, telle quelle,
      sans la décompresser. Marche dans tous les navigateurs.

Entre deux, ton travail est enregistré tout seul dans le navigateur : tu
peux fermer la page et reprendre où tu en étais. Un bandeau te rappelle de
sauvegarder quand tu as des modifications et pas de dossier synchronisé.

LE DOSSIER flashy-data
Un fichier par chapitre, une question par ligne, en JSON :

   flashy-data/
      config.json                     les cinq niveaux (CM2, 6ᵉ, 5ᵉ, 4ᵉ,
                                      3ᵉ), leurs chapitres, leurs notions
                                      et leurs prérequis, tes classes et
                                      leur avancement
      questions/<niveau>/00-calcul-mental.json
      questions/<niveau>/00-prerequis.json
      questions/<niveau>/00-problemes.json
      questions/<niveau>/<n°>-<chapitre>.json
   Les trois fichiers « 00- » n'existent que pour les quatre années de
   collège : le CM2 n'a que ses quatre fichiers de chapitre.

Ouvre n'importe lequel dans un éditeur de texte, corrige, enregistre, puis
clique sur « Synchroniser » (ou « 📂 Charger ») dans Flashy.

Le nom des fichiers ne sert qu'à s'y retrouver : Flashy prend tous les
.json qu'il trouve, et chacun dit dans son en-tête à quel niveau et à quel
chapitre il appartient. Tu peux donc renommer un chapitre, les réordonner,
renommer ou déplacer un fichier : rien ne se perd. Quand tu sauvegardes
dans un dossier synchronisé, Flashy y remet de l'ordre et retire les .json
devenus inutiles — il ne touche à rien d'autre.

Le champ « chapitre » de l'en-tête fait autorité sur les questions du
fichier : recopier un fichier de chapitre et changer ce seul champ suffit à
rattacher toutes ses questions ailleurs.

LE VOLUME DE LA BANQUE
   CM2   220 questions (réservoir de prérequis)
   6ᵉ    625 questions · 22 problèmes
   5ᵉ    908 questions · 26 problèmes
   4ᵉ    908 questions · 26 problèmes
   3ᵉ    919 questions · 26 problèmes
Chaque notion de 4ᵉ et de 3ᵉ compte au moins 21 questions. Les années plus
anciennes sont plus inégales : en 5ᵉ, une notion sur six atteint ce seuil, et la
plus pauvre (« Axes et centres de symétrie ») n'a que 10 questions.

MULTI-CLASSES
Chaque niveau peut avoir plusieurs classes (5ᵉ A, 5ᵉ B…). Le sélecteur
se trouve dans l'en-tête, à droite du niveau ; le « + » ajoute une classe.
On les renomme et on les supprime dans l'onglet Progression, en haut.
Chaque classe garde son propre avancement (chapitres faits, chapitre en
cours, notions travaillées) ; les chapitres et les questions restent
communs à toutes les classes d'un même niveau.

PRÉREQUIS PAR NOTION
Dans l'onglet Progression, chaque chapitre a un panneau « Prérequis
associés ». Tu y choisis les NOTIONS sur lesquelles il s'appuie : celles
d'une autre année (6ᵉ pour un chapitre de 5ᵉ, etc.) ou d'un chapitre
antérieur de la même année. Un sélecteur d'année, un filtre par chapitre
et une recherche libre permettent de les retrouver.
Le créneau « prérequis » de la séance — la Q2 dans le déroulé par défaut —
est tiré dans les questions de ces notions : celles du chapitre en cours ET
du chapitre suivant, pour préparer le terrain. Un jeu de prérequis par défaut est déjà en place pour les
quatre années ; libre à toi de l'ajuster.
Le panneau du bas — « Questions « Prérequis 6ᵉ » de la banque de 5ᵉ », l'année
et le niveau s'y adaptant — reste disponible pour cibler une question précise
plutôt qu'une notion.

LE SUIVI DES NOTIONS
Dans « Ma progression », le petit ▸ déplie les notions d'un chapitre. Elles
sont TOUTES DÉCOCHÉES au départ : tu coches une notion le jour où tu l'as
traitée en classe, et c'est à partir de là qu'elle entre dans les tirages et
dans l'espacement. Cocher « Fait » sur un chapitre coche d'un coup toutes
ses notions (de même que « Marquer « faits » les chapitres précédents ») ; les
décocher ensuite reste possible à la main. Chaque classe a son propre suivi.

LE DÉROULÉ D'UNE SÉANCE
Par défaut : Q1 calcul mental · Q2 prérequis · Q3 réinvestissement · Q4 et Q5
sur le chapitre en cours, sur deux notions différentes. Une séance = un jour
où tu lances un tirage ; le compteur avance tout seul. Toutes les 3 séances,
un problème court en contexte réel prend la place du créneau réinvestissement —
la Q3 dans le déroulé par défaut. S'il n'y a pas de réinvestissement au
programme, le problème s'ajoute à la fin.
Tout cela se règle dans l'onglet Réglages (voir plus bas).

ESPACEMENT DES NOTIONS
Une notion qui vient de tomber revient à S+1, puis S+3, S+6, S+12, S+24.
Les notions marquées « clé » (★) reviennent plus vite : S+1, S+2, S+4, S+8,
S+12. Ces intervalles sont modifiables dans l'onglet Réglages.

L'ONGLET RÉGLAGES
Tout le déroulé d'une séance s'y modifie :

   Les questions de la séance
      Combien de questions, et le rôle de chacune — calcul mental,
      prérequis, réinvestissement, chapitre en cours, problème. L'ordre est
      celui de la projection, Q1 en haut à gauche. Un rôle peut revenir
      plusieurs fois ; deux créneaux « chapitre en cours » tombent alors sur
      deux notions différentes.
      Les flèches ↑ ↓ déplacent un créneau, 🗑 en retire un, « + Ajouter une
      question » en ajoute — jusqu'à douze.
   Les problèmes
      Toutes les combien de séances, et s'ils prennent la place du
      réinvestissement ou s'ajoutent aux autres questions.
   Le retour des notions
      Les intervalles d'espacement, ceux des notions clés, et la règle des
      deux notions différentes.
   Le rythme des séances
      Ce qui fait avancer le compteur : un jour de tirage, chaque tirage, ou
      toi-même. Dans ce dernier cas un bouton « Séance suivante » apparaît à
      côté du tirage. C'est ce compteur qui commande tout l'espacement.

TROIS CRANS DE RÉGLAGE
Chaque réglage se pose à l'un de trois crans, du plus général au plus
précis : tout Flashy, un niveau, une classe. Un cran auquel tu ne touches
pas hérite de celui du dessus — la ligne te dit d'où vient la valeur, et ↺
la rend à l'héritage.
Le sélecteur, en haut de l'onglet, propose tout Flashy et les quatre
niveaux ; choisis un niveau et une seconde ligne apparaît avec « tout le
niveau » et chacune de ses classes. Tu peux donc régler la 3ᵉ B sans quitter
la 5ᵉ A que tu as à l'écran. Un point • marque les portées qui portent au
moins un réglage, pour les repérer d'un coup d'œil.
Tu peux donc faire 5 questions partout, sauf 4 en 3ᵉ, sauf 6 en 3ᵉ B.
« Appliquer ces réglages à tous les niveaux » évite de saisir quatre fois la
même chose. Un encadré, en bas de l'onglet, récapitule en français ce que
donnera la séance.
Les réglages des trois crans partent dans la sauvegarde, avec le reste.

LES TROIS MARQUEURS DE NOTION (onglet Progression, à droite de chaque notion)
▦  cette notion demande un schéma
⏳  à travailler seulement pendant le chapitre, plus jamais après
★  notion clé : elle revient plus souvent
Et sur chaque prérequis associé à un chapitre, le menu « retiré après … »
indique la notion de l'année en cours qui le retravaille : dès qu'elle est
cochée dans le suivi de la classe, ce prérequis cesse d'être proposé à
cette classe.

LES SCHÉMAS
Une question peut porter un schéma, choisi dans la liste déroulante « Schéma »
de sa fiche. Il y en a 67, rangés par famille : Fractions, Nombres et calcul,
Géométrie, Aires et volumes, Données, Calcul littéral. Chacun se règle par
quelques paramètres, dont le rappel s'affiche sous la liste — par exemple
« début, fin, graduations par unité, position du point, nom du point » pour une
droite graduée. L'aperçu, en bas de la fiche, montre le résultat immédiatement.
Les schémas sont dessinés par Flashy lui-même : aucune image à fournir, et
ils restent nets quelle que soit la taille de projection.
Sous le champ des paramètres, une ligne facultative permet d'ajouter une
légende, en italique sous le schéma — « Figure à main levée », par exemple.
Elle disparaît si tu retires le schéma.
Sur une droite graduée, toutes les graduations sont tracées mais toutes ne sont
pas nommées : quand les nombres se toucheraient — de −9 à 9, « −9 » demande deux
fois la place disponible, et la projection agrandit encore les annotations —
Flashy n'en nomme qu'une sur deux, sur trois ou sur quatre, en gardant le zéro
quand il peut. Ce n'est pas un oubli.

UN SCHÉMA QUI DONNE LA RÉPONSE
Certains schémas racontent déjà la solution : le carré découpé qui montre le
développement de (x + 3)², la boîte à moustaches qui affiche les quartiles
cherchés, la série où la médiane est encadrée. Dans la fiche d'une question,
la case « 🙈 caché jusqu'à la réponse », à côté du choix du schéma, garde
alors le schéma masqué : à sa place s'affiche un cadre en pointillés, et il
apparaît quand tu montres la réponse — d'un coup avec « 👁️ Afficher les
réponses » (« 👁️ Réponses » si la fenêtre est étroite), ou carte par carte avec
l'œil. En projection aussi.
La case n'apparaît que si un schéma est choisi, et l'option part dans la
sauvegarde avec le reste de la question.

PROBLÈMES ET CALCULATRICE
Les problèmes sont un type de question à part entière : filtre « Problèmes »
dans la banque, ajout, modification, suppression, et ils font partie de
l'export. La case 🖩 d'une question autorise la calculatrice ; un badge
apparaît alors sur la carte.

CHAQUE PROBLÈME SE RAPPORTE À DES CHAPITRES
Un problème n'appartient pas à un chapitre — il en mobilise souvent
plusieurs — mais il indique ceux dont il relève, exactement comme une
question de prérequis indique ceux qu'elle prépare. Deux façons de le dire :

   • dans la fiche du problème (onglet Banque), le panneau « Chapitres
     auxquels ce problème se rapporte » ;
   • depuis un chapitre (onglet Progression, panneau « Prérequis associés »),
     le sous-panneau « Problèmes qui se rapportent à ce chapitre » : on y
     coche d'un coup tous les problèmes du chapitre.

Au tirage, Flashy écarte les problèmes qui portent sur un cours que la classe
n'a pas encore vu. Un problème sans aucun chapitre indiqué reste utilisable
partout ; et si vraiment rien ne correspond à l'avancement de la classe,
Flashy prend dans tout le vivier plutôt que de laisser la case vide.
La carte projetée affiche le chapitre concerné, comme pour les autres
questions — ou seulement les numéros, « Ch. 3, 7 », quand le problème en
mobilise plusieurs. Sept des cent problèmes livrés sont dans ce cas.

Les 100 problèmes livrés — 22 en 6ᵉ et 26 dans chacune des trois autres
années — sont tous déjà rattachés.

ÉCRITURE ET VARIABLES
Les fractions s'écrivent un nombre sous l'autre. Les variables (x, y, 3a,
a², r³, « pour a = 3 »…) sont repérées toutes seules et s'affichent en
cursive et en gras, bien distinctes du symbole × — dans les énoncés, dans
les réponses et sur les schémas. Les unités (m, h, g, s, t, L) et les
tournures comme « combien y a-t-il » n'y sont pas confondues.
Si le repérage automatique se trompe ou en oublie une, tu décides toi-même :
dans la fiche d'une question, sélectionne une lettre et clique sur le bouton
« Variable » (au-dessus de l'énoncé et de la réponse), ou encadre-la
d'étoiles — *a*. Dès qu'un texte contient une étoile, la détection
automatique s'arrête pour ce texte : seules tes étoiles comptent. Les
étoiles fonctionnent aussi dans les libellés d'un schéma. L'aperçu, en bas
de la fiche, montre la carte telle qu'elle sera projetée.

SAUVEGARDER ET CHARGER
Le bouton 💾 Sauvegarder, en haut à droite, fait l'un ou l'autre selon la
situation :
   • si un dossier est synchronisé, il écrit dedans, directement : les
     .json sont réécrits, et ceux qui ne servent plus sont retirés ;
   • sinon, il télécharge une archive flashy-sauvegarde-AAAA-MM-JJ.zip.
Dans les deux cas ce sont les mêmes fichiers : une sauvegarde et un dossier
de données, c'est la même chose.

Les boutons Synchroniser et 📂 Charger remplacent entièrement le contenu
de l'application — progressions, questions, classes et avancement. Ils
demandent confirmation, et te préviennent si tu as des modifications non
sauvegardées.

Pour passer d'un ordinateur à l'autre :
   1. 💾 Sauvegarder sur le premier poste ;
   2. sur le second, 📂 Charger et choisir l'archive — c'est tout.
Si tu veux repartir d'un dossier synchronisé sur le second poste,
décompresse l'archive, puis Synchroniser sur le dossier obtenu.

Dans la version autonome, 💾 Sauvegarder télécharge une archive et
📂 Charger la reprend. Les questions incluses dans le fichier servent de
point de départ à la première ouverture.

Si un fichier .json est illisible, Flashy l'ignore et charge le reste : tu
retrouveras un chapitre vide plutôt qu'une page blanche.

LE NIVEAU CM2
Les prérequis de 6ᵉ forment un niveau CM2 qui n'apparaît pas dans le
sélecteur : il sert uniquement de réservoir de prérequis. On le retrouve
dans le panneau « Prérequis associés » de chaque chapitre, première
pastille d'année.

L'HABILLAGE DE FLASHY
Le petit bouton tout à gauche du groupe, avant « Synchroniser », ouvre le choix
du costume.
Par défaut il est sur « Automatique » : Flashy change tout seul avec le
calendrier.
  • les saisons : printemps (20/03), été (21/06), automne (23/09),
    hiver (21/12) ;
  • les moments de l'année, prioritaires sur la saison et actifs de deux à
    six semaines selon le moment : rentrée (22/08 – 20/09), Halloween (20/10 – 08/11),
    Noël (05/12 – 06/01), Chandeleur (26/01 – 09/02), Pâques (± 16 jours
    autour du dimanche de Pâques, date recalculée chaque année) et les
    grandes vacances (07/07 – 21/08).
Sept costumes restent au choix et ne sortent jamais tout seuls :
Classique, Super-héros, Ninja, Coach, Musicien, Artiste et Anniversaire.
Un costume choisi à la main le reste jusqu'à ce que tu remettes
« Automatique ». Le choix est propre au navigateur, il ne fait pas partie
de la sauvegarde.

MODE PROJECTION
Le bouton « Projection » passe en plein écran sans défilement, sur deux
colonnes remplies de haut en bas : avec le déroulé par défaut, Q1, Q2 et Q3
à gauche, Q4 et Q5 à droite. Le nombre de lignes s'ajuste au nombre de
questions que tu as réglé, et Flashy se pose dans la case restée libre.
Le texte et les schémas s'adaptent tout seuls à la place disponible, et les
annotations des schémas sont agrandies pour rester lisibles depuis le fond
de la salle. Sur un écran étroit, tout repasse sur une seule colonne.

Tes modifications (progressions, questions, classes, avancement) sont
enregistrées automatiquement dans le navigateur, et c'est cet
enregistrement qui est relu au démarrage : les fichiers ne reprennent la
main que lorsque tu cliques sur « Synchroniser » ou « 📂 Charger ».
Pense donc à « 💾 Sauvegarder » de temps en temps pour remettre tes ajouts
dans les fichiers.

« 📂 Charger » n'attend pas forcément une archive : tu peux aussi lui donner
des .json en vrac, un seul ou tous ceux d'un dossier décompressé, config.json
compris. C'est le recours quand une messagerie refuse les pièces jointes .zip.

Le bouton « ⧉ JSON » de l'onglet Banque ne sert plus qu'en dépannage : si
le téléchargement est bloqué, ou pour reprendre une ancienne sauvegarde
qui tenait dans un seul fichier .json.

LE DOSSIER outils — POUR TOI, PAS POUR LES PROFS
Sept utilitaires qui ne servent qu'à la maintenance et qu'il ne faut pas
livrer avec l'application :

   construire-autonome.js       refabrique « Flashy (autonome).html » à
                                partir du .html et du dossier flashy-data.
                                À relancer après toute modification du code
                                ou des questions, sinon les deux versions
                                divergent.  →  node outils/construire-autonome.js
   generateur-questions/        les scripts Python qui ont engendré les
                                questions de 4ᵉ et de 3ᵉ. Ils calculent
                                chaque réponse au lieu de la recopier, et
                                complètent sans jamais créer de doublon :
                                on peut les relancer pour aller plus loin.
                                  →  python3 outils/generateur-questions/gen4e.py
   tester-acces-dossier.html    à double-cliquer pour vérifier, sur un poste
                                donné, si le navigateur autorise Flashy à
                                lire et écrire dans un dossier.
   publier-archive.py           refait l'archive que le site distribue et son
                                contenu déplié, en vérifiant que les deux
                                portent les mêmes octets.
                                  →  python3 outils/publier-archive.py
   captures-site.py             les dix captures du site, prises dans un vrai
                                navigateur piloté par l'interface. Demande
                                geckodriver, Firefox et Pillow.
   captures-presentation.py     seulement les quatre images de la page
                                d'accueil du site.
   captures.py                  des captures en pleine fenêtre, pour une
                                documentation ou une annonce.

À livrer à un professeur : « Flashy (autonome).html » seul, ou bien
« Flashy - questions flash.html » avec le dossier flashy-data et ce
LISEZ-MOI.
