Un projet visant à cataloguer et gérer les informations sur les applications utilisées au sein du ministère de l'Intérieur. L'objectif est de fournir un point de vérité unique pour répertorier et gérer les métadonnées de ces applications.
- Référentiel des applications
- Backend : NestJS avec TypeScript
- Base de données : PostgreSQL
- ORM : Prisma
- Conteneurisation : Docker & Docker Compose
Avant de commencer, assurez-vous d'avoir installé les outils suivants sur votre machine :
Suivez ces étapes pour lancer l'environnement de développement complet.
git clone https://github.com/dnum-mi/referentiel-applications.git
cd referentiel-applicationsCette commande va construire les images des conteneurs (si nécessaire) et les démarrer en arrière-plan.
docker compose up --buildExécutez ces commandes pour préparer la base de données et le client Prisma :
docker compose exec backend npx prisma generate
docker compose exec backend npx prisma migrate deploy
docker compose exec backend pnpm cmd user create -e [email protected] -a 30 # Permet de créer un utilisateur administrateurSi votre projet inclut un frontend, cette commande génère le code nécessaire pour communiquer avec l'API backend :
docker compose exec client bash pnpm api:generate🎉 Félicitations, l'environnement est prêt !
Pour obtenir les droits administrateur en local:
- Rendez-vous sur http://localhost:5555
- Trouvez l’utilisateur à modifier dans l’interface dédiée
- Ajustez le champ
levelpour lui donner le rôle admin (un niveau élevé correspond à l’admin)
Pour suivre les logs de tous les services (backend, bdd, etc.) :
docker compose logs -fPour voir les logs d'un service spécifique (ex: backend) :
docker compose logs -f backendPour arrêter et supprimer les conteneurs :
docker compose downPour exécuter la suite de tests automatisés du backend :
docker compose exec backend pnpm testLes tests unitaires se trouvent dans le dossier /backend/test. Pour ajouter un test, créez un fichier .spec.ts dans ce dossier.
-
Créez une branche depuis
mainen suivant la convention de nommage :# Pour une nouvelle fonctionnalité git switch -c feature/nom-de-la-feature # Pour une correction de bug git switch -c fix/nom-du-fix
-
Assurez-vous que votre code respecte les normes de formatage avant de commit :
pnpm run format
-
Avant de soumettre une PR :
- Vérifiez que tous les tests passent
- Vérifiez que le code est correctement formaté
Nous suivons les Conventional Commits pour garantir la cohérence et faciliter le versionnement. Le format est validé automatiquement avant chaque commit grâce à Husky et Commitlint.
Exemples :
feat(auth): add login functionalityfix(ui): correct button alignmentdocs(readme): update installation instructionsrefactor(api): simplify user queryci(docker): optimize build process
Ce projet est sous licence MIT. Voir le fichier LICENSE pour plus de détails.