Configuration requise
Ce qu'il faut installer avant de lancer votre pack, avec ou sans Docker.
Pour le pack Full Stack
Contenu de votre pack
| Pack | Applications incluses dans le téléchargement | Fonctionne seul |
|---|---|---|
| Full Stack | API, site étudiant, tableau de bord admin | Oui, les trois ensemble |
| Site étudiant | Site étudiant | Oui, sur les données d'exemple intégrées jusqu'à ce que vous connectiez une API Learnio |
| Tableau de bord admin | Tableau de bord admin | Oui, sur un mock exécuté dans le navigateur jusqu'à ce que vous connectiez une API Learnio |
| API | API | Oui, en servant uniquement l'API |
Un pack à application unique n'inclut pas les autres applications. Les frontends peuvent utiliser une API que vous faites déjà tourner, mais le code de l'API ne se trouve que dans les packs Full Stack et API.
Avec Docker
- Docker Desktop sous macOS ou Windows, ou Docker Engine avec le plugin Compose sous Linux. Le pack Full Stack démarre avec une seule commande
docker compose. - Une connexion internet pour le premier build, qui télécharge les images de base et les dépendances.
- Rien d'autre : Docker fournit Node.js, et la base de données est un fichier SQLite dans un volume Docker.
Avec Docker
- Docker Desktop sous macOS ou Windows, ou Docker Engine sous Linux. Votre application a son propre
Dockerfile; Compose n'est pas nécessaire. - Une connexion internet pour le premier build, qui télécharge l'image de base et les dépendances.
Sans Docker
- Node.js 22 ou 24, les versions LTS sur lesquelles Learnio est testé. Node 26 fonctionne aussi, mais il n'inclut plus Corepack : exécutez d'abord
npm install -g corepack. - Yarn 4, via Corepack. Exécutez
corepack enableune fois ; chaque application fixe sa propre version de Yarn, doncyarnchoisit la bonne.
Base de données
Aucun serveur de base de données et aucun compilateur C++. L'API utilise SQLite par défaut et crée le fichier pour vous ; Docker utilise aussi SQLite. MySQL est pris en charge par un simple changement de configuration, sans toucher au code.
Ports
Chaque application écoute sur un port local fixe. Assurez-vous que rien d'autre ne les utilise ou, avec Docker, déplacez-en un avec SITE_PORT, ADMIN_PORT ou API_PORT dans un .env à côté de docker-compose.yml.
| Application | Port |
|---|---|
| API | 8000 |
| Site étudiant | 3030 |
| Tableau de bord admin | 3031 |
Port
Le site étudiant écoute sur le port 3030. Assurez-vous que rien d'autre ne l'utilise.
Port
Le tableau de bord admin écoute sur le port 3031. Assurez-vous que rien d'autre ne l'utilise.
Port
L'API écoute sur le port 8000. Assurez-vous que rien d'autre ne l'utilise.
Une API à connecter
Rien n'est nécessaire pour essayer votre application : elle fonctionne sur ses propres données d'exemple. Pour utiliser des données réelles, elle a besoin d'une API Learnio en cours d'exécution, dont vous indiquez l'adresse dans son .env. L'API est vendue comme un pack à part.
Services optionnels
Aucun n'est nécessaire pour lancer Learnio en local. Chacun s'active avec ses clés dans back-end/.env.
| Service | Sans lui |
|---|---|
| Cloudflare R2 ou un autre bucket compatible S3 | Les médias sont servis depuis les fichiers d'exemple intégrés aux applications ; seul l'envoi de nouveaux médias cesse de fonctionner. |
| Resend, pour les e-mails | Chaque message est écrit dans le journal de l'API à la place. |
| Stripe et PayPal | Le paiement fonctionne sur un simulateur intégré qui finalise les commandes sans débiter personne. Les cours gratuits n'ont jamais besoin d'un processeur de paiement. |
| Clés Google, OpenAI ou DeepSeek | L'assistant IA demande à l'administrateur sa propre clé dans le navigateur. |
| Un serveur Jitsi Meet | Le calendrier affiche les cours en direct comme indisponibles. |