Page:
Installation
No results
1
Installation
tarzzan edited this page 2026-05-20 02:11:15 +00:00
🚀 Installation
Guide de démarrage rapide pour installer et lancer RetroToon Studio en local.
Prérequis
| Outil | Version minimum | Vérification |
|---|---|---|
| Node.js | 22.x | node --version |
| pnpm | 9.x | pnpm --version |
| MySQL | 8.0+ (ou TiDB) | mysql --version |
| Git | 2.x | git --version |
Installation Rapide
1. Cloner le dépôt
git clone https://git.cosmolan.fr/tarzzan/retrotoon-studio.git
cd retrotoon-studio
2. Installer les dépendances
pnpm install
3. Configurer l'environnement
Créez un fichier .env à la racine :
# Base de données
DATABASE_URL=mysql://user:password@localhost:3306/retrotoon_studio
# Authentification
JWT_SECRET=votre-secret-jwt-256-bits
VITE_APP_ID=votre-app-id-manus
OAUTH_SERVER_URL=https://api.manus.im
VITE_OAUTH_PORTAL_URL=https://manus.im/app-auth
# IA (optionnel)
GEMINI_API_KEY=votre-cle-gemini
# Stockage (fourni par Manus)
BUILT_IN_FORGE_API_URL=https://forge.manus.im
BUILT_IN_FORGE_API_KEY=votre-cle-forge
VITE_FRONTEND_FORGE_API_KEY=votre-cle-frontend
VITE_FRONTEND_FORGE_API_URL=https://forge.manus.im
4. Initialiser la base de données
# Générer les migrations
pnpm drizzle-kit generate
# Appliquer les migrations (via votre client MySQL)
mysql -u user -p retrotoon_studio < drizzle/migrations/0001_initial.sql
5. Lancer le serveur de développement
pnpm dev
Le serveur démarre sur http://localhost:3000.
Structure des Commandes
| Commande | Description |
|---|---|
pnpm dev |
Lance le serveur de développement (hot reload) |
pnpm build |
Build de production (client + serveur) |
pnpm test |
Exécute les tests unitaires (Vitest) |
pnpm drizzle-kit generate |
Génère les migrations SQL |
pnpm drizzle-kit studio |
Interface visuelle pour la DB |
Configuration Avancée
Base de données
RetroToon Studio supporte :
| SGBD | Support | Notes |
|---|---|---|
| MySQL 8+ | ✅ | Recommandé pour la production |
| TiDB | ✅ | Compatible MySQL, distribué |
| MariaDB | ⚠️ | Non testé officiellement |
| PostgreSQL | ❌ | Non supporté (Drizzle MySQL) |
Services IA (Optionnel)
Pour une utilisation complète du pipeline IA, configurez les services externes :
# FFmpeg Service (extraction HD, export)
FFMPEG_SERVICE_URL=http://localhost:8080
# SAM 2 Service (segmentation)
SAM2_SERVICE_URL=http://localhost:8081
# ControlNet Service (style transfer)
CONTROLNET_SERVICE_URL=http://localhost:8082
💡 Sans ces services, RetroToon Studio fonctionne en mode simulé (données factices pour le développement).
GPU Requirements (Services IA)
| Service | GPU minimum | VRAM | Notes |
|---|---|---|---|
| SAM 2 | NVIDIA RTX 3060 | 8 GB | ViT-H encoder |
| Stable Diffusion XL | NVIDIA RTX 3080 | 10 GB | Inpainting |
| ControlNet | NVIDIA RTX 3080 | 10 GB | Conditionnement |
Déploiement
Via Manus (Recommandé)
RetroToon Studio est déployé automatiquement via la plateforme Manus :
- Créez un checkpoint dans l'interface Manus
- Cliquez sur Publish dans le panneau de gestion
- Le déploiement est automatique (Cloud Run, SSL, CDN)
Via Docker (Self-hosted)
FROM node:22-alpine
WORKDIR /app
COPY package.json pnpm-lock.yaml ./
RUN corepack enable && pnpm install --frozen-lockfile
COPY . .
RUN pnpm build
ENV NODE_ENV=production
EXPOSE 3000
CMD ["node", "dist/server/index.js"]
docker build -t retrotoon-studio .
docker run -p 3000:3000 --env-file .env retrotoon-studio
Via Docker Compose (avec MySQL)
version: '3.8'
services:
app:
build: .
ports:
- "3000:3000"
environment:
DATABASE_URL: mysql://retrotoon:password@db:3306/retrotoon_studio
JWT_SECRET: ${JWT_SECRET}
depends_on:
- db
db:
image: mysql:8.0
environment:
MYSQL_ROOT_PASSWORD: rootpassword
MYSQL_DATABASE: retrotoon_studio
MYSQL_USER: retrotoon
MYSQL_PASSWORD: password
volumes:
- mysql_data:/var/lib/mysql
ports:
- "3306:3306"
volumes:
mysql_data:
Dépannage
Problèmes Courants
| Problème | Cause | Solution |
|---|---|---|
ECONNREFUSED :3306 |
MySQL non démarré | sudo systemctl start mysql |
JWT_SECRET undefined |
.env non chargé | Vérifier le fichier .env |
OAuth callback error |
Mauvais APP_ID | Vérifier VITE_APP_ID |
Upload 502 |
Timeout S3 | Réessayer, vérifier connexion |
Frames vides |
Extraction interrompue | Relancer l'import |
tRPC undefined |
Procédure retourne undefined | Vérifier db.ts (null vs undefined) |
Logs
# Logs serveur
tail -f .manus-logs/devserver.log
# Logs console navigateur
tail -f .manus-logs/browserConsole.log
# Requêtes réseau
tail -f .manus-logs/networkRequests.log
Tests
# Tous les tests
pnpm test
# Un test spécifique
pnpm test -- --filter "gemini"
# Avec couverture
pnpm test -- --coverage
📞 Support
| Canal | Lien |
|---|---|
| Issues | git.cosmolan.fr/tarzzan/retrotoon-studio/issues |
| Wiki | git.cosmolan.fr/tarzzan/retrotoon-studio/wiki |
| william.meri@gmail.com |
🎬 RetroToon Studio
📚 Documentation
🏗️ Technique
⚙️ Gestion
🔗 Liens
v3.5 — Mai 2026
RetroToon Studio — Pipeline IA de Recomposition de Dessins Animés | Créé par William MERI | System D 3.0 | Mai 2026