Pour qui est-ce conçu
Studeia s'adresse à quatre profils d'institutions :
| Verticale | Cas typique | Ressources prioritaires |
|---|---|---|
| Écoles K-12 | Primaire et secondaire, alignement BNCC (programme national brésilien), portail parents | Portail parents avec narration IA, gamification, suivi des mineurs, LGPD |
| Prépas ENEM/concours | Examens blancs en direct, tuteur IA personnalisé, analytique | Analytique psychométrique des quiz, tuteur IA avec RAG du contenu, examens blancs |
| Universités | Cours hybrides, LTI avec Canvas/Moodle existant, gradebook | LTI 1.3 (tool provider), rubriques multi-critères, AGS grade passback |
| Formation en entreprise | T&D, conformité, SSO avec Okta/Azure AD | SAML/OIDC, SCIM 2.0, certificats vérifiables (OB 3.0), API publique |
Architecture en une phrase
Next.js 15 (App Router) + PostgreSQL (Supabase) + Redis + Prisma 7 + LLM Router multi-provider (Claude → GPT → Grok → Gemini fallback) + Voyage AI embeddings (RAG) + Stripe/Asaas billing, déployé dans Docker derrière Caddy avec TLS on-demand (Let's Encrypt automatique).
Fonctionnalités principales
1. Multi-tenancy réel avec white-label complet
Chaque institution (Tenant) bénéficie d'un isolement des données au niveau de la base de données (filtre tenantId sur toutes les requêtes + RLS dans Supabase). Le white-label couvre :
- Couleurs, logo, favicon, police
- Domaine personnalisé (avec TLS automatique via Let's Encrypt)
- 9 thèmes visuels (6 dark glass + 3 light solid/material)
- E-mail institutionnel avec templates brandés
- Possibilité de désactiver entièrement la marque Studeia
Détails dans Multi-tenancy et White-label.
2. Tuteur IA multi-agent avec RAG par tenant
Le tuteur IA de Studeia n'est pas un simple wrapper de ChatGPT. C'est un pipeline multi-agent :
Message de l'étudiant
↓
StudentModelService → charge ConceptMastery + misconceptions + performances aux quiz
↓
RetrievalAgent → recherche RAG tenant-scoped, boost par zones faibles aux quiz
↓
PedagogicalAgent → sélectionne la stratégie (direct_instruction, scaffolding, socratic,
guided_practice, challenge) selon la maîtrise
↓
Orchestrateur → construit le prompt enrichi
↓
LLM (Claude → GPT → Grok → Gemini fallback) → streaming
↓ après réponse
EvaluationAgent → classifie les misconceptions (Haiku, ~$0.001)
ContentAgent → pré-génère un exercice de suivi
SupervisorAgent → modère (arrière-plan, ~$0.001)
Le contenu du cours est ingéré via RAG par tenant — le tuteur cite le contenu exact de l'institution, et non du contenu générique. Détails dans Tuteur IA Overview.
En plus du pipeline multi-composant du tuteur, il existe des agents administratifs séparés, à la demande, avec leurs propres outils : CourseReviewAgent, AI Course Editor et Gamification Agent. Seuls les composants qui appellent un LLM utilisent la configuration de modèle par tâche (TenantTaskModelConfig) — Orchestrator/Retrieval/Pedagogical sont en TypeScript pur (déterministes).
3. CMS éducatif avec 8 types de leçons + 6 sous-types interactifs
Types de leçons : slides, video, PDF, rich_text, quiz, assignment, live_class, external_link.
Sous-types interactifs : interactive_video (avec points de contrôle), drag_drop, fill_blanks, flashcard_set (avec algorithme SRS SM-2), timeline, branching_scenario (arbre de décision).
Génération automatique de cours : téléchargez un PDF/DOCX/PPTX, le pipeline LLM extrait les sujets et génère des modules avec des leçons structurées. Détails dans CMS.
4. Moteur de quiz avec analytique psychométrique
Alpha de Cronbach (cohérence interne), discrimination point-bisérielle, difficulté des items, analyse des distracteurs MC/TF, distribution des scores. Intégrité académique : détecte les changements d'onglet, les anomalies de temps, affiche des indicateurs dans le gradebook. Prise en charge d'une banque de questions réutilisable avec plus de 8 types de questions.
5. Classes en direct multi-provider
BigBlueButton (par défaut, intégration iframe), Zoom (Server-to-Server OAuth), Microsoft Teams (Graph API), Google Meet (OAuth + Calendar). Pattern adaptateur unifié. Webhooks lifecycle + cron de synchronisation des enregistrements (fallback). Identifiants stockés avec AES-256-GCM.
6. Gamification native complète
XP, niveaux (configuration hiérarchique tenant→cours), 11 critères de badge avec logique booléenne AND/OR, badges OB 3.0 (Open Badges 3.0 — W3C Verifiable Credential), leaderboards Redis ZSET (portée cours/groupe, fenêtres weekly/monthly/alltime), concours avec 7 métriques, boutique de récompenses avec monnaie virtuelle, et agent IA dédié pour que les admins créent une stratégie de gamification via chat.
7. Communication intégrée
Forums (par groupe ou à l'échelle du cours), annonces (avec portée de groupe et notifications automatiques), messages privés (DMs), notifications in-app en temps réel, pièces jointes dans tous les canaux (forum/annonce/message), e-mail institutionnel avec templates Handlebars en 4 langues, 3 providers (SMTP/Resend/SendGrid).
8. SSO Enterprise + SCIM 2.0
SAML 2.0 (via node-saml), OIDC avec PKCE, SCIM 2.0 (14 endpoints RFC 7644), provisionnement JIT, mapping groupe→cours (inscription automatique), journal d'audit SCIM. Plan enterprise.
9. LTI 1.3 (tool provider)
Studeia peut être enregistré comme outil externe dans Canvas, Blackboard, Moodle ou tout LMS compatible LTI 1.3. Lancement OIDC, JWT/JWKS, AGS grade passback (les notes se synchronisent automatiquement en retour). Détails dans intégrations LTI.
10. Automatisations (mini-n8n intégré)
Moteur Déclencheur → Condition → Action. 3 types de déclencheurs : événement de plateforme, cron planifié et webhook public. 21 événements supportés, dont assignment_submitted, live_class_scheduled, badge_earned, level_up et contest_ended. 9 actions, dont send_email. Prévention SSRF, rate limiting, limite de profondeur de chaîne à 5. Webhook public authentifié par token. Détails dans Automatisations.
11. Mobile B2B (React Native/Expo)
Application Android publiée. Environ 47 endpoints /api/mobile/* avec une forme simplifiée et Bearer auth. White-label dynamique post-connexion. Notifications push via Expo. SSO via deep linking (studeia://auth/callback). Mises à jour OTA via expo-updates.
12. Conformité LGPD native
GET /api/user/data-export (Art. 18 IV, rate limit 1/24h). DELETE /api/user/account (Art. 18 VI, anonymise les PII, conserve les données d'apprentissage pendant 5 ans pour conservation fiscale). Politique de confidentialité/CGU publiques en 4 langues. DPA disponible pour l'enterprise.
13. API publique avec 166 méthodes documentées
Double authentification (session + clé API Bearer). Scopes granulaires (courses:read, users:write, etc. — 35 types). Rate limiting Redis (3 niveaux). Documentation sur /api/overview.
14. Avatar parlant du tuteur IA en temps réel
Opt-in par cours (HeyGen LiveAvatar / D-ID, BYO key). Voir Avatar & TTS.
15. Apprentissage adaptatif
ConceptMastery bayésien, cycle de vie des misconceptions en 3 états, répétition espacée. Voir Apprentissage adaptatif.
16. IA multi-provider
Changer Claude/GPT/Grok/Gemini par tâche, sans vendor lock-in. Voir IA multi-provider.
Modèle de facturation
5 plans B2B :
| Plan | Prix/mois | Étudiants | Pour qui |
|---|---|---|---|
| Demo | Gratuit | 1 | Évaluer la plateforme (Haiku only, 10 msgs/jour) |
| Mini | R$250 | 10 | Tuteur particulier, petite école |
| Crescimento | R$1 000 | 50 | Petite prépa, formation en entreprise |
| Escala | R$1 500 | 100 | Prépa moyenne, école |
| Enterprise | Sur devis | Custom (maxStudentsOverride) | Université, grande T&D d'entreprise |
Coût supplémentaire de l'IA : typiquement R$2-8/étudiant/mois selon l'utilisation (suivi via AiUsageLog par tenant). L'admin peut changer de provider (Claude → GPT → Grok → Gemini) sans casser aucune fonctionnalité.
Stack technique résumée
- Runtime : Next.js 15 App Router, React Server Components, TypeScript strict mode
- Base de données : PostgreSQL (Supabase) + pgvector (RAG, 1024 dims)
- ORM : Prisma 7 avec adapter-pg
- Cache/Queue : Redis 7 + BullMQ
- LLM : Claude (primary) → OpenAI → xAI Grok → Google Gemini (chaîne de fallback par tier)
- Embeddings : Voyage AI (primary, 1024 dims) → OpenAI (fallback)
- Auth : Supabase Auth avec SSR
- Stockage : Supabase Storage (public pour les médias, privé pour les soumissions)
- E-mail : SMTP/Resend/SendGrid (factory pattern)
- Vidéo live : BBB/Zoom/Teams/Google Meet (adapter pattern)
- Billing : Stripe + Asaas (PIX)
- Mobile : Expo SDK 52 + NativeWind + Supabase + TanStack Query
- Déploiement : Docker + Caddy (TLS on-demand) + Let's Encrypt sur VPS propre
- Observabilité : Sentry (10% session replay, 100% on error)
Conformité et sécurité
- LGPD native (export de données, suppression de compte, DPA enterprise)
- WCAG 2.1 AA (skip-to-content, focus-visible, haut contraste, barre A11y, navigation clavier)
- Open Badges 3.0 (W3C Verifiable Credentials)
- LTI 1.3 (compatible certifié 1EdTech)
- SCIM 2.0 (RFC 7644)
- AES-256-GCM sur les identifiants OAuth + clés API
- HMAC-SHA256 sur l'état OAuth + cookies d'usurpation d'identité
- Rate limiting Redis sur toutes les surfaces LLM
- 100 tests unit/integration passants (45 core + 55 web)
Carte complète des fonctionnalités
| Domaine | Pages |
|---|---|
| Plateforme | Multi-tenancy · White-label · IA multi-provider · Application mobile · Sécurité & LGPD · Accessibilité · i18n · SSO Enterprise |
| Tuteur IA | Pipeline · Ingestion RAG · Apprentissage adaptatif · Avatar & TTS · Superviseur de sécurité |
| CMS | Cours & leçons · Types de leçons · Contenu interactif · AI course builder · Médiathèque |
| Évaluation | Moteur de quiz · Banque de questions · Gradebook |
| Engagement | Gamification · Classes en direct · Communication · E-mail |
| Opérations | Automatisations · Rapports & risques · API · LTI 1.3 |
Limitations connues
Pour être transparent sur les compromis :
- Application iOS : encore sur la feuille de route (nécessite un compte Apple Developer Program à 99$/an)
- Entrée vocale (STT) : parler au tuteur (parole → texte) n'est pas implémenté ; l'avatar parlant est uniquement en sortie
- Vidéos de cours pré-générées via IA (Synthesia) : non implémenté
- Signature cryptographique des badges & bouton LinkedIn natif : feuille de route (les badges se vérifient via URL/API publique aujourd'hui)
- Plugins tiers : Studeia ne dispose pas d'un écosystème de plugins comme Moodle. Personnalisation via API publique.
- On-premise : Studeia est SaaS uniquement. Pour les réglementations exigeant un hébergement on-premise, nous ne répondons pas encore à ce besoin.