# Project Agora ## Description Project Agora est une plateforme web open-source permettant à plusieurs intelligences artificielles de **collaborer entre elles** pour concevoir la structure complète d'un projet logiciel à partir d'un **prompt utilisateur** ou d'un **document explicatif**. L'objectif est de produire : - Une **architecture logicielle complète**, incluant : - Une **hiérarchie de fichiers** structurée pour le projet - Une **spécification détaillée** du contenu attendu pour chaque fichier (sans implémentation de code, uniquement une description fonctionnelle et technique) - Un **raisonnement justifié** pour chaque choix technique. - Des **diagrammes explicatifs** (Mermaid). - Une **synthèse finale cohérente** prête à être utilisée comme base de développement. Aucune génération de code direct n'est effectuée : seules des **explications, réflexions et structures** sont produites. --- ## Objectif Reproduire une **table ronde d'IA spécialistes**, chaque agent IA représentant un rôle spécifique : - Architecte logiciel - Développeur backend - Développeur frontend - Designer UI/UX - Data engineer - Chef de projet - Éventuellement d'autres rôles selon la complexité du prompt. Cependant, l'aspect le plus crucial de ces IA réside dans leur capacité à **échanger, négocier, voire s'opposer** pour déterminer collectivement la meilleure approche à adopter. --- ## Exemple d'utilisation L'utilisateur entre ceci dans l'interface : > « Je souhaite faire une application de calculatrice scientifique responsive web. » Le système demande alors à plusieurs IA leur point de vue sur : - Le langage ou framework le plus adapté - L'organisation du projet (folders, modules) - Les fichiers essentiels - Les interactions front/back éventuelles - Le design minimal (UI/UX conceptuel) Elles discutent pour converger vers un consensus, puis produisent une **fiche conceptuelle du projet** au format structuré (JSON + affichage visuel + diagrammes Mermaid). --- ## Architecture technique ### Stack principal - **Frontend**: Vue.js 3 + Vite - **Backend**: Node.js + Express - **AI Layer**: Multi-agent système avec Mistral API - **Storage**: SQLite + JSON backup - **Diagrammes**: Mermaid.js ### Architecture globale ```mermaid graph TD A[Frontend: Vue.js 3] -->|User Prompt| B[Backend: Node.js] B -->|Orchestration| C[AI Layer: Mistral Agents] C -->|Debate Data| D[Storage: SQLite/JSON] C -->|Diagram Specs| E[Mermaid Engine] E -->|SVG/Render| A D -->|History| A ``` --- ## Fonctionnalités prévues - Saisie d'un texte ou envoi d'un document PDF décrivant le projet - Personnalisation du nombre d'IA participants (3 à 15) - Visualisation des échanges IA sous forme de thread - Synthèse finale générée dynamiquement - Exportation de la structure en JSON, Markdown ou PDF - Thème clair/sombre intégré à l'UI --- ## Flux utilisateur ```mermaid sequenceDiagram participant User participant Orchestrator participant AI_Architect participant AI_Designer participant AI_Engineer User->>Orchestrator: Prompt project Orchestrator->>AI_Architect: Generate approach Orchestrator->>AI_Designer: Discuss UI/UX Orchestrator->>AI_Engineer: Suggest modules AI_Architect-->>Orchestrator: Architecture proposal AI_Designer-->>Orchestrator: Interface ideas AI_Engineer-->>Orchestrator: Technical design Orchestrator-->>User: Final structured response + diagram ``` --- ## Roadmap - [ ] Prototype d'interface Vue.js - [ ] Simulation IA avec prompts locaux - [ ] Gestion multi-agents réelle avec API - [ ] Intégration Mermaid dynamique - [ ] Stockage et historisation des débats --- ## Licence MIT License — Open-source