J'ai créé une application de gestion de classe, qui me permet de gagner du temps dans ce qui est administratif. Avec un léger suivi des enfants avec les observations que j'ajoute dans le cahier journal.

Lien vers l'application

Voici un petit tutoriel:

📚 Classroom — Guide d'utilisation

Application de gestion de classe pour les enseignants du primaire — v1.8
Licence GNU GPL v3 — Zéro dépendance externe — Données 100% locales


🚀 Premier lancement

Au premier démarrage, Classroom demande de choisir un dossier de sauvegarde. C'est obligatoire — toutes les données sont écrites dans ce dossier avec des archives datées automatiques.

⚠️ Choisissez un dossier sur votre disque (par exemple ~/Documents/classroom-data/). Même si vous réinstallez l'application, vos données seront intactes.

Structure créée :

MonDossier/
├── classroom-data.json              ← sauvegarde principale
└── archives/
    ├── classroom-2026-04-15.json
    ├── classroom-2026-04-14.json
    ├── classroom-2026-04-13.json
    ├── classroom-2026-04-12.json
    └── classroom-2026-04-11.json    ← 5 archives max (rotation auto)

📊 Tableau de bord

Le tableau de bord est la page d'accueil. Il affiche :

⚡ Actions rapides

6 boutons en grille 2 colonnes : nouvelle fiche, nouvelle séquence, journal du jour, lancer la journée, EDT, recherche globale.

⏱️ Heures hebdomadaires — EDT vs Bulletin Officiel

Graphique comparant vos heures par domaine avec les horaires officiels du BO, par niveau (CE1, CE2, CM1 chacun sa colonne). Les matières avec composition sont automatiquement ventilées.

CouleurSignification
🟢 VertConforme (entre 90% et 110% du BO)
🔴 RougeÉcart supérieur à 10% (trop haut ou trop bas)

👤 Observations élèves

Grille de cartes avec la dernière observation de chaque élève. Cliquez sur une carte pour voir l'historique complet. Bouton 📝 Ajouter une observation pour noter rapidement.


📅 Emploi du temps

Grille visuelle matin + après-midi avec les jours en colonnes.

Créer une séance

Cliquez sur une zone vide dans la grille → la modale s'ouvre avec l'horaire pré-rempli. Choisissez le titre, la matière, les niveaux concernés.

Créneaux parallèles

Pour avoir des activités différentes par niveau au même horaire :

  1. Créez une séance (ex: « Texte libre ») et sélectionnez seulement CE1
  2. Cliquez ➕ Créneau parallèle en bas de la modale
  3. La séance CE1 est sauvegardée, une nouvelle modale s'ouvre avec CE2 + CM1 pré-sélectionnés
  4. Les deux séances s'affichent côte à côte dans la grille
┌───────── Lundi ─────────┐
│ 9h30                     │
│ ┌──────────┬────────────┐│
│ │ Texte    │ Atelier    ││
│ │ libre    │ maths      ││
│ │  CE1     │ CE2  CM1   ││
│ └──────────┴────────────┘│
│ 10h30                    │

🎨 Matières & composition horaire

Accédez aux matières via le bouton 🎨 Matières dans l'emploi du temps.

Domaines officiels

10 domaines pré-configurés : Français, Mathématiques, Sciences, Histoire, Géographie, EMC, Arts plastiques, Éducation musicale, EPS, Langue vivante.

Utilisez 🔄 Réinitialiser domaines pour les restaurer si besoin.

Composition horaire

Quand vous créez une matière personnalisée, définissez sa composition :

Travail individuel = Français 50% + Mathématiques 50%
Quoi de neuf ?     = Français 50% + EMC 50%
Présentations      = Français 33% + Sciences 33% + Histoire 34%

→ Les pourcentages se répartissent automatiquement à parts égales quand vous ajoutez un domaine
→ Le total ne peut jamais dépasser 100%
→ La matière apparaît sous chaque domaine qu'elle référence dans la liste
→ Dans le sélecteur de séance, ces matières apparaissent dans le groupe « Activités composées »
→ Le dashboard ventile automatiquement le temps dans les bons domaines

⚠️ Un domaine utilisé comme parent par d'autres matières ne peut pas devenir lui-même un sous-domaine. L'application bloque et affiche un message d'erreur.


📖 Cahier journal

Le cahier journal affiche les séances du jour, générées automatiquement depuis l'EDT. Naviguez entre les jours avec les flèches ◀ ▶ ou le sélecteur de date.

Modifier une séance

Cliquez sur une séance pour l'éditer : titre, matière, objectif, notes, fiches liées. Les modifications sont marquées d'un badge Modifié.

Lien vers les fiches de prep

Chaque séance a un bouton à droite :

📄 — une fiche est déjà liée → clic = ouvre la fiche
📝+ — pas de fiche → clic = crée une fiche pré-remplie et l'ouvre


📝 Observations avec #Prénom

Dans la zone Notes & observations du cahier journal, utilisez #Prénom pour lier une observation à un élève.

Autocomplétion

Tapez # → la liste des élèves apparaît. Utilisez les flèches ↑↓ pour naviguer, Entrée pour sélectionner, ou cliquez avec la souris. La liste se filtre au fur et à mesure.

Syntaxe

Bonne journée, les CE1 étaient concentrés.
#Jade lecture très fluide, gros progrès
 elle a aussi aidé Léo en dictée
#Léo doit revoir les tables de multiplication
#Jade a terminé son plan de travail

Règles de parsing

CasComportement
#Jade texte...Début de la note pour Jade
Retour à la ligneFin de la note
Ligne commençant par un espaceContinuation de la note
Plusieurs #Prénom sur une ligneChacun prend le texte jusqu'au suivant
Même élève mentionné 2 foisLes notes sont concaténées avec « | »

✅ Les observations sont datées automatiquement et consultables dans le tableau de bord → carte de l'élève → historique complet.


📝 Fiches de préparation

Bibliothèque de fiches avec filtres par statut (🔴 Brouillon / 🟢 Prête / 🔵 Réalisée), matière et niveau.

Éditeur de fiche

Chaque fiche contient : titre, matière, niveaux, objectif, compétences, durée, matériel, différenciation, notes.

Phases

Les phases du déroulement sont réordonnables par glisser-déposer (poignée ⠿). Chaque phase a un titre, une durée, un type (collectif / groupe / binôme / individuel) et une description.

Pièces jointes

Images (base64, vignettes) et PDF. Les images sont intégrées dans le PDF généré. Les PDF joints sont fusionnés via Ghostscript.

En mode édition, un fil d'Ariane « 📝 Fiches › Texte libre » permet de savoir où vous êtes et de revenir à la liste en un clic.


📚 Séquences pédagogiques

Organisez vos séquences par domaine avec des compétences du référentiel et des fiches liées.

Séances réordonnables par drag & drop
Modèles : bouton 📋 pour sauver une séquence comme modèle réutilisable
Duplication : bouton 📋 sur chaque carte
Compétences : sélection depuis le référentiel national (1481 compétences CP→CM2)


📊 Progressions annuelles

Tableau compétences × périodes avec cases à cocher. Cliquez sur une case pour la marquer comme programmée. Un bouton « Tout en PDF » génère l'ensemble des progressions.


🎯 Compétences

Navigateur du référentiel national avec 1481 compétences de CP à CM2, organisées par domaine et niveau. Barre de progression montrant le taux d'utilisation dans les séquences.


▶️ Journée de classe

Sélecteur de jour

Choisissez n'importe quel jour de la semaine — pas seulement aujourd'hui. Boutons en haut : Lundi, Mardi, Jeudi, Vendredi. Aujourd'hui est entouré d'un liseré bleu.

Mode 3 colonnes

Une fois la journée démarrée, l'écran se divise en 3 :

┌───────────┬─────────────────┬──────────┐
│ Timeline  │  Suivi élèves   │  Timer   │
│           │                 │          │
│ 9h Accueil│  Jade    ✓      │  ⏱ 12:34 │
│ 9h15 QDN │  Léo     ✓      │          │
│ 9h30 Fr  │  Inès    •      │  [Pause] │
│ ...       │  ...            │  [Stop]  │
└───────────┴─────────────────┴──────────┘

3 modes de timer

Digital, horloge analogique, ou Time Timer (disque rouge qui diminue). Le timer passe automatiquement au créneau suivant.

Mode enfant

Plein écran avec le timer visible par les élèves. Bouton cadenas pour revenir au mode adulte (mot de passe configurable).


⌨️ Raccourcis clavier

RaccourciAction
Ctrl+KRecherche globale
Ctrl+NNouvelle fiche de prep
Ctrl+JCahier journal
Ctrl+EEmploi du temps
F5Lancer la journée
ÉchapFermer modale / recherche

💾 Sauvegarde & archives

Classroom sauvegarde automatiquement à chaque modification :

NiveauQuand
localStorageCache ElectronÀ chaque modification
Fichier principalclassroom-data.jsonÀ chaque modification
Archive datéearchives/classroom-YYYY-MM-DD.json1 par jour, 5 max

ℹ️ Si le fichier principal est corrompu, l'application restaure automatiquement depuis la plus récente archive. Un toast jaune vous prévient.

Indicateur visuel

Un discret ✓ Sauvegardé clignote dans la sidebar à chaque sauvegarde.


📁 Structure des données

Toutes les données sont dans un seul fichier JSON :

{
  "config":       { "schoolName", "teacherName", "levels[]", "periods[]" },
  "students":     [{ "id", "firstname", "lastname", "niveau", "autonomy" }],
  "edt":          { "jours[]", "horaires{}", "matieres[]", "seances[]" },
  "journal":      { "YYYY-MM-DD": { "seances[]", "notes" } },
  "fiches":       [{ "id", "titre", "phases[]", "statut", "attachments[]" }],
  "sequences":    [{ "id", "titre", "competences[]", "ficheIds[]" }],
  "progressions": {},
  "observations": { "YYYY-MM-DD": { "studentId": "texte" } },
  "rotationSets": [{ "id", "name", "groups[]" }],
  "journee":      { "slots[]", "dayStarted", "currentSlot" }
}

Classroom v1.8 — Application libre pour enseignants du primaire
Licence GNU GPL v3 — Aucune dépendance externe — Données 100% locales

Emmanuel H.