Skip to content

🎭 Vue d'ensemble du projet LIPAIX

📋 Contexte

LIPAIX est un groupe de théâtre d'improvisation basé à Paris. Notre plateforme technique comprend :

  • 🌐 Site web public - Présentation et réservation d'événements
  • 🔧 Interface d'administration - Gestion des spectacles et disponibilités
  • 🤖 Bot Discord - Gestion des équipes et disponibilités
  • 📚 Documentation technique - Ce site

🏗️ Architecture générale

Notre projet suit une architecture monorepo avec plusieurs services :

LIPAIX Platform
├── 🌐 Web Application (Next.js)
├── 🔧 Admin Interface (PayloadCMS)
├── 🤖 Discord Bot (Node.js)
├── 📊 Database (PostgreSQL)
├── 🚀 Cache (Redis)
└── 📚 Documentation (VitePress)

🎯 Philosophie technique

Clean Architecture (simplifiée)

Nous appliquons les principes de Clean Architecture avec des raccourcis pratiques :

  • ✅ Séparation des responsabilités - Chaque couche a un rôle défini
  • ✅ Inversion de dépendance - Les couches internes ne dépendent pas des externes
  • ✅ Testabilité - Code structuré pour faciliter les tests
  • ❌ Raccourcis - Simplifications pour faciliter la contribution

Monorepo avec pnpm

  • 📁 apps/ - Applications (web, discord-bot, admin)
  • 📁 shared/ - Code partagé entre applications
  • 📁 docs/ - Documentation technique (ce site)

🚀 Technologies principales

Frontend

  • Next.js 13+ - Framework React avec App Router
  • React 18 - Composants, hooks, état
  • TailwindCSS - Système de design utility-first
  • TypeScript - Typage statique

Backend

  • PayloadCMS - CMS headless auto-hébergé
  • PostgreSQL - Base de données relationnelle
  • Redis - Cache et sessions

DevOps

  • Railway - Plateforme de déploiement cloud
  • GitHub Actions - CI/CD et workflows
  • pnpm - Gestionnaire de paquets

🔄 Workflow de développement

Stratégie de branches

  • main - Code source de vérité (toujours déployable)
  • feature/* - Branches de fonctionnalités
  • deploy/* - Branches de déploiement

Processus de déploiement

  • ⚠️ IMPORTANT : Déploiement MANUEL, pas automatique
  • 1. Développement sur branche feature
  • 2. Pull Request vers main
  • 3. Merge vers main (ne déploie PAS)
  • 4. Déploiement manuel via GitHub Actions
  • 5. Mise à jour des branches deploy/*

📚 Structure de la documentation

Cette documentation est organisée pour être exhaustive et détaillée :

  1. 🎯 Vue d'ensemble - Ce que vous lisez actuellement
  2. 🚀 Guide de démarrage rapide - Premiers pas pour contribuer
  3. 🏗️ Architecture - Structure technique détaillée
  4. 🛠️ Frontend - React, Next.js, TailwindCSS
  5. 🔧 Backend - PayloadCMS et architecture
  6. 🤖 Bot Discord - Discord.js et intégrations
  7. 🚂 Déploiement - Railway et workflows

🎯 Objectifs de cette documentation

  • 📖 Exhaustive - Couvrir tous les aspects techniques
  • 🔍 Détaillée - Expliquer les concepts avant de lier vers la doc officielle
  • 👥 Accessible - Pour développeurs de tous niveaux
  • 🔄 À jour - Mise à jour avec le code

🚀 Prochaines étapes


Cette documentation est en cours de création. Merci de votre patience !

Released under the MIT License.