Réviser le titre professionnel TSSR (Technicien Supérieur Systèmes et Réseaux) en jouant : les cours de la promo sont transformés en 906 questions, un terminal simulé fait taper de vraies commandes Cisco/Bash/PowerShell, et le classement de promo entretient la motivation. Chaque question corrigée affiche une explication et sa fiche source — on apprend, on ne devine pas.
| Bienvenue | Thèmes | Examens | À revoir | Classement | Profil |
|---|---|---|---|---|---|
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Tout se mérite : les niveaux se débloquent à 70 % de réussite, l'Atelier et les examens s'ouvrent quand les fondations sont posées.
flowchart LR
subgraph Themes["📚 10 thèmes"]
N1["Niveau 1<br>connaissance"] --> N2["Niveau 2<br>compréhension"]
N2 --> N3["Niveau 3<br>application"]
N3 --> N4["Niveau 4<br>analyse"]
end
N3 -.->|"niveau 3 en Réseaux,<br>Linux et Windows"| Atelier["🧪 Atelier TP<br>48 mini-TP terminal"]
N1 -.->|"niveau 1 validé<br>partout"| P1["🎓 Examen palier 1"]
P1 --> P2["Palier 2"] --> P3["Palier 3"] --> P4["Palier 4<br>épreuve finale"]
P4 --> Root(["👑 root@tssr<br>8 000 XP"])
Atelier --> Root
7 grades jalonnent la route : stagiaire → technicien junior → technicien systèmes →
administrateur junior → admin systèmes & réseaux → expert infrastructure → root@tssr.
| 🃏 8 types de questions | QCM, choix multiples, association, remise en ordre, champ libre, scénario de panne, terminal, mini-TP guidé |
| 🖥️ Terminal réaliste | prompts évolutifs (Switch# → (config-vlan)#), autocomplétion Tab, historique ↑/↓, marqueur d'erreur ^ aligné comme sur un vrai IOS |
| ⏱️ Examens blancs | 4 paliers progressifs, 20 questions / 20 min, aucune fuite d'indice pendant l'épreuve, corrigé complet à la fin |
| 🔁 Révision espacée | chaque erreur part en pile « à revoir », sortie après 2 bonnes réponses d'affilée |
| 💾 Checkpoint | session sauvegardée à chaque question — on reprend plus tard, même sur un autre appareil |
| 🏆 Gamification | XP, 7 grades, 8 badges, classement de promo en temps réel |
| ☁️ Comptes synchronisés | pseudo + mot de passe, progression PC ↔ téléphone, mode invité 100 % local |
| ⌨️ Accessible | réponses au clavier (1-4 / A-D / Entrée), focus visible, ARIA |
Application 100 % statique (aucun serveur à maintenir, coût d'infrastructure : 0 €) ; la partie en ligne repose sur Supabase, sécurisée par Row Level Security.
flowchart TB
subgraph Client["🌐 Navigateur"]
App["Application<br>HTML / CSS / JS vanilla"]
LS[("localStorage<br>mode invité")]
App <--> LS
end
Pages["GitHub Pages<br>hébergement statique"] -->|"HTML + JS +<br>banque JSON versionnée"| App
subgraph Supabase["☁️ Supabase"]
Auth["Auth<br>pseudo + mot de passe"]
DB[("PostgreSQL + RLS<br>profiles · progress")]
end
App <-->|"session JWT"| Auth
App <-->|"sync + classement"| DB
python -m http.server 8123puis ouvrir http://localhost:8123 — ou simplement double-cliquer Lancer-le-quiz.bat sous Windows.
(Un serveur statique est nécessaire : les banques de questions sont chargées en fetch.)
index.html application monopage
css/style.css thème « console » sombre
js/app.js moteur : sessions, examens, XP, badges, checkpoint
js/online.js comptes, synchronisation, classement (Supabase)
questions/
├── manifest.json thèmes + modules + version de la banque
└── <thème>/<module>.json 906 questions réparties en 28 modules
supabase/ schéma SQL + durcissement (RLS, contraintes)
tools/validate_bank.py validation structurelle de toute la banque
- Validateur automatique :
python tools/validate_bank.py— schéma des 8 types, bornes des réponses, unicité des 906 identifiants, cohérence du manifest ; - banque versionnée : mise à jour des questions sans vider le cache de personne ;
- questions sourcées : chaque question est reliée en interne à sa fiche de cours d'origine (traçabilité de la banque).
Un retour, un bug, une idée de question ? Ouvrez une issue — la promo améliore le jeu chaque jour. 🛠️






