No description
| .local_packages | ||
| assets | ||
| backend | ||
| venv | ||
| README.md | ||
| workspace.code-workspace | ||
Classroom Tracker
Une application web simple et temps réel pour le suivi de tâches en classe. Backend Python (FastAPI) + Frontend Vanilla JS + WebSockets.
Pré-requis
- Docker & Docker Compose (Recommandé)
- OU Python 3.10+
Installation & Lancement
Option A: Docker (Recommandé)
- Aller dans le dossier
backend:cd backend - Lancer:
docker-compose up --build - Accéder à l'application sur http://localhost:8000.
Option B: Local (Sans Docker)
- Créer un environnement virtuel:
cd backend python3 -m venv venv source venv/bin/activate - Installer les dépendances:
pip install -r requirements.txt - Lancer le serveur:
uvicorn app.main:app --reload
Usage
-
Créer une session:
- Sur la page d'accueil, cliquez sur "Créer une session".
- Vous obtenez deux liens : Professeur (Admin) et Élève.
-
Côté Élève:
- Ouvrez le lien Élève dans un nouvel onglet (ou partagez-le).
- Entrez un pseudo.
- Vous voyez la liste des tâches. Cochez-les au fur et à mesure.
- Besoin d'aide ? Cliquez sur le bouton "Demander de l'aide".
-
Côté Professeur:
- Vous voyez la liste des élèves connectés et leur progression en temps réel.
- Si un élève demande de l'aide, une alerte apparaît. Vous pouvez cliquer sur "Résoudre" une fois aidé.
- Vous pouvez ajouter/supprimer des tâches ou modifier leur ordre. Les élèves verront les changements instantanément.
Tests
Pour lancer les tests automatisés:
pytest
Structure
app/models: Modèles de base de données (SQLAlchemy).app/api: Endpoints HTTP et WebSocket.app/services: Logique métier (WebSocket manager).app/templates&app/static: Frontend.
