• PHP 60.7%
  • TypeScript 23%
  • Twig 11.2%
  • SCSS 2.2%
  • HCL 1.6%
  • Other 1.3%
Find a file
2026-04-24 16:40:38 +02:00
.gitlab ci: skip build Docker sur les MR et optimiser le pipeline 2026-04-07 17:05:12 +02:00
.husky dx: alléger le pre-commit hook, ajouter raccourcis Makefile, clarifier la doc 2026-04-10 10:12:24 +00:00
__mocks__ feat: mise en place d'un export des interventions en csv 2024-11-06 17:07:31 +01:00
assets refactor: renommer canOnlyAsk en canOnlyAskForIntervention 2026-04-10 09:51:27 +00:00
bin feat: 🎉 setup Symfony 2024-09-12 10:40:13 +02:00
ci chore(ci): suppression des jobs CI en échec permanent 2026-04-07 14:52:16 +02:00
config fix(security): bloquer proprement les utilisateurs désactivés via UserChecker 2026-04-24 16:40:38 +02:00
data-habitant feat(employer): ajout de la limite sur le nombre d'habitant #650 2026-02-13 17:17:41 +01:00
docs dx: alléger le pre-commit hook, ajouter raccourcis Makefile, clarifier la doc 2026-04-10 10:12:24 +00:00
fixtures feat: initialisation des catégories et types par défaut depuis un fichier YAML 2026-03-20 17:28:02 +01:00
migrations feat(employer): ajout de la limite sur le nombre d'habitant #650 2026-02-13 17:17:41 +01:00
migrations-test feat: 🎉 minimal working implementation 2024-10-01 18:56:56 +02:00
public feat: initialisation des catégories et types par défaut depuis un fichier YAML 2026-03-20 17:28:02 +01:00
scripts docs: renommer les fichiers en français, fusionner SSL et Xdebug dans le guide de démarrage 2026-04-07 15:15:40 +02:00
src fix(security): bloquer proprement les utilisateurs désactivés via UserChecker 2026-04-24 16:40:38 +02:00
templates fix(security): renforcer le contrôle d'accès sur les catégories et sous-catégories 2026-04-22 09:53:57 +02:00
terraform chore(terraform): nettoyer terraform caldav #567 2025-12-04 13:56:26 +01:00
tests fix(security): bloquer proprement les utilisateurs désactivés via UserChecker 2026-04-24 16:40:38 +02:00
translations refactor: ♻️ transformation du rôle historique ROLE_ELECTED en ROLE_APPLICANT 2025-07-11 17:01:04 +02:00
.dockerignore ci: skip build Docker sur les MR et optimiser le pipeline 2026-04-07 17:05:12 +02:00
.editorconfig feat: 🎉 minimal working implementation 2024-10-01 18:56:56 +02:00
.env feat(logs): logger l'IP réelle du client derrière le reverse proxy 2026-04-22 08:17:52 +02:00
.env.docker fix: corriger la documentation et le setup pour l'onboarding 2026-03-20 16:08:34 +01:00
.env.local.dist build(docker): construction d'un docker compose stable en local 2026-01-08 15:03:07 +01:00
.env.test refacto: du système de requête pour limiter les erreurs de saisies 2025-10-06 17:05:56 +02:00
.eslintrc.js feat: 🎉 minimal working implementation 2024-10-01 18:56:56 +02:00
.gitignore chore: ignore agents configuration 2025-11-14 16:43:34 +01:00
.prettierignore fix(admin): 🐛 amélioration du décodage des sessions afin de prévenir le bug en production 2025-02-03 21:08:55 +01:00
.prettierrc.js feat: 🎉 minimal working implementation 2024-10-01 18:56:56 +02:00
.symfony.local.yaml chore: 🧑‍💻 configuration d'un transport (force_async) de test pour messenger 2025-12-01 11:05:08 +01:00
babel.config.js test(security): 🔒 mise en place de l'outillage de test Stimulus et test du password_validation_controller 2024-12-12 12:12:38 +01:00
Caddyfile build(docker): construction d'un docker compose stable en local 2026-01-08 15:03:07 +01:00
compose.yaml build(docker): construction d'un docker compose stable en local 2026-01-08 15:03:07 +01:00
composer.json fix : Correction des vulnérabilités pour symfony/process et symfony/symfony 2026-02-02 15:04:44 +01:00
composer.lock fix : Correction des vulnérabilités pour symfony/process et symfony/symfony 2026-02-02 15:04:44 +01:00
config.etl.yml fix: 🐛 configuration ETL manquante pour entities_over_limits 2026-03-13 09:14:56 +01:00
custom.d.ts feat(signalement): :spatules: création de la fonctionnalité de signalement citoyen 2025-10-10 11:18:28 +02:00
Dockerfile fix: :security: upgrade PHP 8.4.16 2026-01-08 08:25:58 +01:00
Dockerfile.local build(docker): construction d'un docker compose stable en local 2026-01-08 15:03:07 +01:00
fileTransform.js test: mise en place des tests sur le javascript 2024-11-05 16:39:27 +01:00
jest-setup.ts feat(signalement): :spatules: création de la fonctionnalité de signalement citoyen 2025-10-10 11:18:28 +02:00
jest.config.ts test: mise en place des tests sur le javascript 2024-11-05 16:39:27 +01:00
LICENSE feat: 📝 réorganisation de la documentation suite à la migration 2024-10-01 18:56:56 +02:00
Makefile fix: ajouter les nouvelles cibles Makefile à .PHONY 2026-04-10 10:12:24 +00:00
nginx.conf feat(logs): logger l'IP réelle du client derrière le reverse proxy 2026-04-22 08:17:52 +02:00
package.json feat(signalement): :spatules: création de la fonctionnalité de signalement citoyen 2025-10-10 11:18:28 +02:00
phpstan-baseline.neon fix(notifications): 🐛 modification de place de l'id dans les titres des notifications et ajout dans les titres de mail 2025-12-05 14:26:13 +01:00
phpstan.dist.neon feat: 🎉 minimal working implementation 2024-10-01 18:56:56 +02:00
phpstan.neon chore: ⬆️ mise à jour vers PHPStan 2.0 et Rector 2.0 (RC2) 2024-12-06 11:43:21 +01:00
phpunit.xml.dist feat: 🎉 minimal working implementation 2024-10-01 18:56:56 +02:00
README.md docs: formatage Prettier des tableaux markdown 2026-04-07 15:15:40 +02:00
rector.php feat: 🎉 minimal working implementation 2024-10-01 18:56:56 +02:00
renovate.json chore: augmenter le délai de temps de contrôle de release 2025-11-28 10:14:07 +01:00
sonar-project.properties feat: mise en place d'un export des interventions en csv 2024-11-06 17:07:31 +01:00
supervisord.conf feat(settings): création de la section Notification dans les paramètres et ajout des notifications mail 2025-04-25 08:07:13 +02:00
symfony.lock deps: suppression des dépendances inutiles et amélioration de la gestion des variables d'environnements #549 2025-08-29 10:33:03 +02:00
tsconfig.json feat(signalement): :spatules: création de la fonctionnalité de signalement citoyen 2025-10-10 11:18:28 +02:00
webpack.config.js feat(signalement): :spatules: création de la fonctionnalité de signalement citoyen 2025-10-10 11:18:28 +02:00
yarn.lock feat(signalement): :spatules: création de la fonctionnalité de signalement citoyen 2025-10-10 11:18:28 +02:00

Agents en intervention

PHP >= 8.4 pipeline status Quality Gate Status Licence MIT

Solution SaaS pour coordonner les interventions techniques des collectivités. Portée par l'Incubateur des Territoires (ANCT) et beta.gouv.fr.

agentsenintervention.anct.gouv.fr


Démarrage rapide

git clone git@gitlab.com:incubateur-territoires/startups/agents-intervention/agents-en-intervention.git
cd agents-en-intervention
make setup        # build, démarrage, SSL, migrations, assets
open https://localhost

Prérequis : Docker Desktop (ou Docker Engine + Compose) et Make.

Stack technique

Couche Technologie
Backend Symfony 7.3 (PHP 8.4), API Platform
Frontend React 19 + TypeScript, monté via Stimulus bridge
Base de données PostgreSQL 16
Design system DSFR (Système de Design de l'État)
Serveur web FrankenPHP (dev), nginx + php-fpm (prod)
Stockage fichiers Scaleway S3 (MinIO en local)
Async Symfony Messenger (transport Doctrine)
Hébergement Scaleway Serverless Containers, Terraform

Commandes utiles

make up           # Démarrer les services
make down         # Arrêter les services
make watch        # Recompiler les assets en continu
make test         # Lancer les tests (PHP + JS)
make phpstan      # Analyse statique PHP
make logs         # Voir les logs
make shell        # Shell dans le conteneur
make migrate      # Exécuter les migrations
make db-fixtures  # Charger les fixtures

Services locaux

Service URL Identifiants
Application https://localhost -
Mailpit (emails) http://localhost:8025 -
MinIO (S3) http://localhost:9001 minioadmin / minioadmin
PostgreSQL localhost:5432 app / !ChangeMe!

Workflow de branches

dev ──MR──> release/* ──MR──> main
 |              |               |
 v              v               v
env dev     env preprod     semantic-release → tag v* → env prod

Les déploiements sont automatiques. Merger dans main déclenche semantic-release qui crée un tag, et le tag déploie en production.

Documentation

Pour démarrer

Document Description
Guide de démarrage Installation, SSL, Xdebug, premiers pas

Architecture et fonctionnel

Document Description
Architecture technique Stack, infrastructure, sécurité, flux
Décisions d'architecture ADR : pourquoi ces choix techniques
Rôles et permissions Les 5 rôles utilisateur et leurs droits
Cycle de vie d'une intervention États, transitions, workflow Symfony

Opérations

Document Description
Intégration continue Pipeline CI/CD, déploiement, release
Metabase Tableau de bord analytique, ETL

Statistiques

Les statistiques d'utilisation sont disponibles sur la page statistique du service et sur Données et Territoires.

Licence

MIT