Contribuer¶
Configuration¶
```bash git clone https://github.com/anote-ai/Panacea cd Panacea
Installer les paquets Node.js¶
npm install
Configurer le backend Python¶
cd packages/backend python -m venv .venv source .venv/bin/activate pip install -r requirements.txt cp .env.example .env
Modifier .env avec vos clés¶
Démarrer tout¶
cd ../.. docker compose up ```
Flux de développement¶
- Créez une branche de fonctionnalité à partir de
main - Apportez vos modifications dans le répertoire
packages/pertinent - Exécutez les tests :
make test - Exécutez les linters :
make lint - Ouvrez une demande de tirage
Tests¶
```bash
Tous les tests¶
make test
Backend uniquement¶
make test-backend
TypeScript uniquement¶
make test-ts ```
Normes de code¶
Python (backend)¶
- Ruff pour le linting (
ruff check .) - Mypy pour la vérification de type (
mypy .) - Pytest pour les tests (≥80% de couverture)
- Annoter tous les nouvelles fonctions avec des types
TypeScript (frontend/cli/sdk)¶
- ESLint pour le linting
- Vitest ou Jest pour les tests
- TypeScript strict (
"strict": true)
CI¶
Les GitHub Actions s'exécutent à chaque push : 1. Backend : ruff → mypy → pytest (seuil de couverture de 80%) 2. TypeScript : build → tests 3. VS Code : construire l'extension 4. Docs : construire le site MkDocs