Ce projet est une application Todo développée avec React, TypeScript et Vite. Il utilise Drizzle pour la gestion de la base de données, Tailwind CSS pour le styling, et est entièrement containerisé avec Docker pour faciliter le développement et le déploiement.
- Docker
- Docker Compose
-
Clonez le repository :
git clone https://github.com/FskiTeo/2025-devops-ci.git cd 2025-devops-ci -
Copiez le fichier d'exemple des variables d'environnement :
cp .env.example .env
-
Lancez les services avec Docker Compose :
docker compose up -d
Note : Ne lancez pas le projet avec pnpm sur votre machine hôte. Tout doit être exécuté dans les containers Docker.
Une fois les containers démarrés, l'application sera accessible sur http://localhost:3000 (ou le port configuré dans votre .env).
Pour effectuer des tâches de développement telles que lancer les tests, le linting ou le build, connectez-vous au container de l'application :
docker compose exec -it app bashÀ l'intérieur du container, vous pouvez utiliser les commandes suivantes :
-
Tests unitaires :
pnpm test -
Tests end-to-end :
pnpm playwright test -
Linting :
pnpm lint
-
Build :
pnpm build
-
Migrations de base de données :
pnpm drizzle-kit generate pnpm drizzle-kit push
src/: Code source de l'applicatione2e/: Tests end-to-end avec Playwrightdrizzle/: Migrations de base de donnéespublic/: Assets statiquesDockerfile: Configuration Docker pour l'applicationMigrator.dockerfile: Configuration Docker pour les migrationsdocker-compose.yml: Configuration des services
- React
- TypeScript
- Vite
- Drizzle ORM
- Tailwind CSS
- Playwright
- Vitest
- ESLint