Un OS campus complet — React 19, Node.js, MongoDB, 19 conteneurs Docker. 196K lignes de code. Framework extensible avec modules config-driven.
Construit par 1 développeur + Claude AI en 81 jours. Le code est open-source. Contribuez, forkez, adaptez à votre campus.
5 etapes. 10 minutes. Zero config manuelle.
git clone [email protected]:EpitechAfrik/Zeno.git
cd epitech-school-app
make init Copie les .env, build les images Docker, demarre tous les services.
code --install-extension .vscode/extensions/zeno-admin/zeno-admin-0.1.0.vsix 4 panneaux : Services Docker, MongoDB Explorer, Redis Explorer, Quick Actions.
make status Tous les services doivent etre running (epitech-app, api, mongo, redis, traefik, minio).
npm run dev Frontend sur http://localhost:5173/app/ — hot reload actif.
claude /new-module mon-module Claude génère le dataset config, les pages, les routes. En prod dans la journée.
Chaque commande active un agent AI qui connait le codebase, le stack, et les conventions.
Donne-moi un nom de module, je te rends les pages, le store, les routes et le dataset config.
Route, modele, test, Swagger — je livre les 4 ensemble, jamais separement.
Pas de HTML brut dans mes pages. Chaque pixel passe par le design system.
Un git push, et c'est en prod. Docker, CI/CD, health check — je gère.
42 tests, 0 fail, coverage 87%. Rien ne passe sans moi.
Pas de .env dans git. Pas de route sans auth. Je veille.
/architect ARCH Architecture, contrats API, modèles de données /backend BACK Routes Express, modeles Mongoose, tests, Swagger /fullstack FULL Pages React, composants, store, routing /designer UX Design system, audits UX, accessibilite /devops OPS Docker, CI/CD, déploiement, monitoring /cybersec SEC Audits sécurité, OWASP, vulnérabilités /qa QA Tests Vitest, detection bugs, quality gates /pm PM Issues GitHub, milestones, roadmap, sprints /marketer MKT Landing page, release notes, copywriting /team ORCH Coordonne tous les agents pour les taches multi-roles /new-module START Creation guidee de module fullstack — 3 phases /debug-module FIX Investigation structuree de bugs — 4 phases /audit-ux GATE Quality gate obligatoire avant toute PR frontend /git-push PIPE Pipeline qualite complet avant push /update-docs DOCS Sync docs avec le code apres chaque push /cost-estimate COST Estimation cout de developpement du codebase Aucun raccourci. Tests, securite, audit UX — tout est automatise avant le push.
Chaque brique est open-source. Zéro licence propriétaire.
Le Dataset Engine, les permissions Permify, le stockage MinIO, les notifications — tout est deja la. Vous ecrivez le metier, Zeno fournit l'infrastructure.
export default {
entity: 'contracts',
label: 'Contrats',
icon: 'FileText',
apiEndpoint: '/api/contracts',
columns: [
{ key: 'employee', label: 'Employe', type: 'entity', entity: 'users' },
{ key: 'type', label: 'Type', type: 'badge' },
{ key: 'startDate', label: 'Debut', type: 'date' },
{ key: 'status', label: 'Statut', type: 'status' }
],
filters: [
{ key: 'type', label: 'Type', options: ['CDI','CDD','Stage'] },
{ key: 'status', label: 'Statut', options: ['actif','expire','resilie'] }
]
} import { useEntityDetail } from '../../hooks/useEntityDetail';
import { Page, PageHeader, Tabs, Tab, TabPanel } from '../../components/ui';
export default function ContractDetail() {
const { entity, loading } = useEntityDetail('contracts', 'fetchContracts');
if (loading) return <LoadingState />;
return (
<Page>
<PageHeader title={entity.employee?.name} />
<Tabs>...</Tabs>
</Page>
);
} Signature DocuSeal, archivage MinIO, historique par employe.
Workflow de validation, calendrier équipe, soldes temps réel.
Upload PDF, consultation portail employe, lien contrat.
Kanban par salle/batiment, photos, notifications auto.
Demande → validation → impact echeancier automatique.
Feed in-app, preferences par canal, dispatch email + push.
Premier commit le 7 janvier 2026. Rythme moyen : 2 435 lignes/jour.
Backend MongoDB + OAuth, API Express, tous les modeles, CRM contacts, DocuSeal, Quiz natif, MinIO.
Portail candidat, pipeline admissions, CRM, 60+ composants UI, portail etudiant, finance.
Premier déploiement Docker, CI/CD, les premiers candidats s'inscrivent.
45 pages pédagogie, 6 systèmes de notation, présences, perdiem, cursus, planning académique.
Permify ReBAC, Design System 60+ composants, Dataset framework, URL state hooks.
Dataset Engine, Finance module, Campus events, Career center, 42 dataset configs.
Chat Socket.io, Portail parent (10 pages), Retro-planning Gantt/Kanban/Table, Import generique.
Cleanup, UX polish, Dozzle monitoring, VSCode Zeno Admin extension, CI/CD Node 22.
Marketing Intelligence (10 pages, GA4, Metricool, UTM, funnels), Scalar API docs (414 routes, 547 ops), Form Builder, Bull Board.
Module Rendez-vous universels, Portail Partenaire, CI/CD local, Permify Makefile, Traefik dev stack.
Portail Alumni (OAuth, matching emploi), Carrière Étudiant, QR Check-in événements, offres partenaires, dashboard marketing engagement.
Architecture multi-portails par sous-domaine, landing pages par portail, login dédié OAuth par portail, Traefik SSL wildcard, rebranding Zeno, iPad-first design system, guided tour driver.js, CSV preview.
Module Campus Communications complet : publipostage Email/WhatsApp, wizard Excel 4 étapes (Upload→Mapping→Compose→Review), sécurité Permify, BullMQ workers, 537 routes API.

Chaque semaine, Zeno évolue. Voici les dernières fonctionnalités déployées — testables en production.
Module complet de publipostage campus : Dataset des communications, formulaire Audience avec TemplatePicker, détail avec CommunicationLog, sécurité Permify par campus.
Upload→Mapping→Compose→Review URL-driven (useURLTab), drag&drop .xlsx/.xls/.csv, détection colonnes, RichTextEditorV2 avec palette de variables, prévisualisation interpolée, envoi BullMQ.
Nouveau endpoint POST /communications/excel/parse — parsing xlsx/csv côté serveur, normalisation des headers, suggestion de keyColumn, limite 5000 lignes.
Chaque portail sur son propre sous-domaine (etudiant., parent., candidat., partenaire., alumni., staff.) avec landing page dediee, login OAuth adapte et routing isole. Traefik SSL wildcard.
Nouvelle identite visuelle Zeno (mascotte, palette sage green), design system iPad-first, responsive sidebar, parallax guide.
Preview macOS-style pour imports CSV, driver.js guided tour pour onboarding utilisateurs, corrections sidebar et routing.
Header controls unifies, carry-over promotions, inline grade editing, Zeno theme colors attendance, quick roll call par defaut.
6e portail — connexion OAuth, dashboard, profil editable, matching offres d'emploi par competences, gestion d'experiences, reseau alumni avec filtre mentors.
Les partenaires postent des offres depuis leur portail. Workflow de validation staff. Matching automatique avec alumni (skills) et etudiants (competences calculees depuis les notes).
Inscription aux événements depuis le portail partenaire. QR code unique par inscription. Page check-in staff avec scanner caméra + check-in manuel. Toujours les deux disponibles.
Nouvelle page dans le portail etudiant : toggle 'ouvert au stage', competences derivees des notes, offres d'emploi correspondantes avec score de matching.
Widget engagement partenaires : taux de présence événements, offres publiées, rendez-vous 30j, méthode de check-in (QR vs manuel).
Composants generiques QRCodeDisplay + QRScanner dans la librairie UI. Remplacement de l'API externe qrserver.com par generation locale (offline). UTM module migre.
MeetingSlot avec lifecycle complet, booking par token public, invitations email + WhatsApp, rappels cron. Deploye sur 4 portails.
Authentification dediee (mot de passe + magic link), dashboard, gestion des rendez-vous, profil entreprise.
Pipeline make ci-quick, Makefile Permify, Traefik dev stack, tests meeting-slots.
10 pages — GA4 Data API, Metricool (reseaux sociaux), UTM builder, funnels de conversion, personas, journey candidat.
OpenAPI auto-généré — 414 routes, 547 opérations documentées. Thème Zeno.
12 types de champs, drag & drop, logique conditionnelle, React Flow. 9 actions, 8 triggers, BullMQ.
Socket.io — messagerie interne entre staff, étudiants et parents. Conversations par équipe.
10 sous-pages : notes, assiduite, EDT, documents, paiements, messagerie, rendez-vous.
Gestion de projets Gantt/Kanban/Table. Import CSV/JSON pour toutes les entites.
Authorization service Zanzibar-inspired. Permissions par équipe, rôles, droits granulaires.
60+ composants UI, Dataset framework config-driven, URL state hooks, barrel imports.
Docker CI/CD, pipeline admissions Kanban, portail candidat. Les premiers candidats s'inscrivent.
API Express, tous les modeles, CRM contacts, DocuSeal, Quiz natif, MinIO, OAuth Google + Microsoft.
9 actions, 8 triggers, BullMQ, Form Builder, Surveys — tout déployé en production.
MeetingSlot, booking par token, invitations, notifications email + WhatsApp, rappels cron, portail partenaire avec auth dédiée — tout déployé.
Dashboard decrochage avec alertes VERT/ORANGE/ROUGE, filtres par promotion, actions rapides (appel, email, WhatsApp). Route /dropout-scoring — en production.
Taux de completion en temps reel : docs signes, comptes actives, formulaires remplis.
Dataset partenaires, fiche detail, formulaire, portail avec auth dediee — en production.
Tracking prescripteurs et parrainage sur le modele Candidate.
QR code scan + check-in manuel — toujours les deux disponibles. Scanner camera (html5-qrcode), toggle par nom, barre de progression temps reel. Deploye.
Taux de présence, méthode de check-in (QR vs manuel), offres partenaires, rendez-vous 30j — widget engagement partenaires intégré au dashboard marketing.
6e portail — connexion Microsoft/Google, dashboard, profil editable, matching offres d'emploi, gestion d'experiences, reseau alumni avec filtre mentors. 11 tests.
Page carriere dans le portail etudiant : toggle recherche de stage, competences calculees depuis les notes, offres correspondantes. Matching alumni + etudiants pour les partenaires.
Connexion a un fournisseur SMS local pour envoi automatise.
Model Mongoose + route CRUD + entity apiStore pour les projets étudiants. Les pages frontend existent déjà (Dataset, Détail, Form) — il manque seulement le backend et la persistance.
Architecture multi-pays pour un groupe scolaire : config par site (devise, langue, fuseau horaire, réglementation), consolidation groupe, dashboards comparatifs inter-sites.
Push one-way des événements Zeno (cours, RDV, événements campus) vers Outlook via Microsoft Graph API. Catégorie 'Zeno' dédiée dans le calendrier utilisateur. Zeno ne lit pas le calendrier — il écrit uniquement.
3 facons de participer — que vous soyez etudiant, alumni ou dev dans une autre ecole.
Contribue a l'outil que tu utilises chaque jour. Prends un ticket du backlog, code un module, ameliore l'UX.
Voir le backlog →Ajoute un module en 2-3 jours grace au framework Dataset. Architecture documentee, tests en place.
Guide onboarding →Forkez Zeno et adaptez-le a votre campus. Le code est open-source, la stack est standard.
Fork sur GitHub →