Commit Graph

14 Commits

Author SHA1 Message Date
b8aae00ea7 fix: add scatterplots
All checks were successful
Build and Publish Docker Images / Build Frontend Image (push) Successful in 12m22s
Build and Publish Docker Images / Build Backend Image (push) Successful in 12m31s
Build and Publish Docker Images / Build Summary (push) Successful in 3s
2026-03-02 17:12:33 +01:00
6cca179346 refactor(ui): unify frontend around compact, desktop-first design
All checks were successful
Build and Publish Docker Images / Build Frontend Image (push) Successful in 3m3s
Build and Publish Docker Images / Build Backend Image (push) Successful in 3m14s
Build and Publish Docker Images / Build Summary (push) Successful in 3s
Extract shared utilities (color functions, icon registry), replace hero
banners with compact PageHeader, add TrimesterSelector/ConfirmDialog/
Breadcrumb components, consolidate off-palette colors to design tokens,
convert AssessmentListView to table layout, compress ResultsView stats
into horizontal bar, and inline ClassFormView as a modal in ClassListView.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-24 09:37:46 +01:00
bb15933e69 fix(ux): improve destructive action safety, accents, navigation and feedback
All checks were successful
Build and Publish Docker Images / Build Backend Image (push) Successful in 2m58s
Build and Publish Docker Images / Build Frontend Image (push) Successful in 3m19s
Build and Publish Docker Images / Build Summary (push) Successful in 3s
Replace window.confirm() with Modal dialogs for class deletion and grade
reset. Add unsaved-changes guards to AssessmentFormView. Warn before
deleting exercises/elements with existing grades. Surface invalid grades
in a detailed Modal after save. Replace GradingView local toasts with
global notification store. Fix missing French accents across CouncilView,
CouncilStudentDetail, and ConfigView. Make dashboard "À corriger" card
and student list rows clickable. Add visual hierarchy to assessment
detail actions. Add loading overlay to trimester switch. Simplify email
sending workflow by removing mode-switch pattern.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 14:25:56 +01:00
a0ab7224e1 refactor: extract duplicated patterns into shared helpers
Backend: create api/helpers.py with eligible_enrollment_filter,
count_eligible_students, get_active_enrollment, ensure_unique_name,
upsert_app_configs, and build_heatmap. Add full_name properties to
Student model. Apply across all route files (-481/+184 lines).

Frontend: create stores/helpers.js with withLoading composable,
apply to assessments and classes Pinia stores.

96/96 tests pass.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 14:05:10 +01:00
b1b7d12a9f feat(api): add concil view
All checks were successful
Build and Publish Docker Images / Build Frontend Image (push) Successful in 3m25s
Build and Publish Docker Images / Build Backend Image (push) Successful in 3m35s
Build and Publish Docker Images / Build Summary (push) Successful in 4s
2026-02-12 17:18:59 +01:00
ba25dd19db feat(class): landing class page
All checks were successful
Build and Publish Docker Images / Build Backend Image (push) Successful in 5m26s
Build and Publish Docker Images / Build Frontend Image (push) Successful in 5m27s
Build and Publish Docker Images / Build Summary (push) Successful in 3s
2025-12-09 16:02:47 +01:00
f76b033d55 feat(mail): restauration de l'envoie de mail
All checks were successful
Build and Publish Docker Images / Build Frontend Image (push) Successful in 2m56s
Build and Publish Docker Images / Build Backend Image (push) Successful in 3m5s
Build and Publish Docker Images / Build Summary (push) Successful in 3s
2025-12-04 06:04:13 +01:00
08c8ee4931 feat(class): improve class/id/student
All checks were successful
Build and Publish Docker Images / Build Backend Image (push) Successful in 3m1s
Build and Publish Docker Images / Build Frontend Image (push) Successful in 3m0s
Build and Publish Docker Images / Build Summary (push) Successful in 3s
2025-12-03 06:32:16 +01:00
ab86bbb2e1 feat(class): improve class/id 2025-12-03 06:20:17 +01:00
a55bb9da97 build: update cicd 2025-11-26 15:32:21 +01:00
0a96abfe9c fix: regenerate frontend package-lock.json after dependency updates
- Update package-lock.json to match updated package.json versions
- Fixes Docker/Podman build error: 'npm ci' lock file sync issue
- Resolves vite 6.4.1, @vitejs/plugin-vue 5.2.4, eslint 9.39.1 mismatches
2025-11-26 06:15:42 +01:00
75a251dfe8 chore: Mise à jour des versions des dépendances
📦 Backend (Python):
- FastAPI: 0.109 → 0.115+
- SQLAlchemy: 2.0.25 → 2.0.36+
- Pydantic: 2.5 → 2.10+
- Uvicorn: 0.27 → 0.32+
- pytest: 7.4 → 8.3+
- Python: 3.11 → 3.12 (Docker)
- Support Python 3.11-3.13

📦 Frontend (Node):
- Vue.js: 3.4 → 3.5.13
- Vite: 5.0 → 6.0.3
- Vue Router: 4.2 → 4.5.0
- Pinia: 2.1 → 2.2.6
- TailwindCSS: 3.4.0 → 3.4.17
- Chart.js: 4.4.1 → 4.4.7
- Node.js: 18 → 22 LTS (Docker)

🐳 Docker:
- Prérequis Docker: 20.10+ → 24.0+
- Docker Compose: 2.0+ → 2.20+

📝 Documentation:
- README.md: Versions mises à jour
- DOCKER.md: Prérequis actualisés
- CHANGELOG.md: Nouveau fichier avec historique complet

 Toutes les versions utilisent les dernières releases stables (Nov 2025)
2025-11-26 06:07:54 +01:00
634b6958bb feat: Ajout configuration Docker complète pour v2
 Fichiers Docker ajoutés:
- backend/Dockerfile: Image Python 3.11 avec uv et FastAPI
- frontend/Dockerfile: Build multi-stage avec Nginx
- docker-compose.yml: Orchestration complète des services
- frontend/nginx.conf: Configuration Nginx avec proxy API

📝 Documentation:
- DOCKER.md: Guide complet de déploiement Docker (monitoring, backup, prod)
- README.md: Section Docker ajoutée
- .env.docker: Template mis à jour pour v2

🔧 Configuration:
- .dockerignore pour backend et frontend
- Volume data/ pour la base de données
- Healthchecks pour les deux services
- Réseau bridge dédié

🚀 Démarrage simplifié:
  cp .env.docker .env
  docker-compose up -d

Accès: http://localhost (frontend) + http://localhost:8000 (API)
2025-11-25 21:22:41 +01:00
2b08eb534a Migration v1 (Flask) -> v2 (FastAPI + Vue.js) complétée
 Changements majeurs:
- Suppression complète du code Flask legacy
- Migration backend FastAPI vers racine /backend
- Migration frontend Vue.js vers racine /frontend
- Suppression de notytex-v2/ (code monté à la racine)

 Validations:
- Backend démarre correctement (port 8000)
- API /api/v2/health répond healthy
- 99/99 tests unitaires passent
- Frontend configuré avec proxy Vite

📝 Documentation:
- README.md réécrit pour v2
- Instructions de démarrage mises à jour
- .gitignore adapté pour backend/frontend/

🎯 Architecture finale:
notytex/
├── backend/     # FastAPI + SQLAlchemy + Pydantic
├── frontend/    # Vue 3 + Vite + TailwindCSS
├── docs/        # Documentation
└── school_management.db  # Base de données (inchangée)

Jalon 6 complété: Application v2 prête pour utilisation!
2025-11-25 21:09:47 +01:00