Déposer une pré-plainte en ligne et l'envoyer à la base de données de la police. | Read-only mirror of https://github.com/republique-et-canton-de-geneve/pre-plainte — République et canton de Genève. Issues & pull requests at the source.
  • Java 44.5%
  • Vue 27%
  • TypeScript 22.2%
  • JavaScript 2.8%
  • HTML 2.1%
  • Other 1.4%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Elise Tissot 5d8d2c64f3 Merge pull request #146 from republique-et-canton-de-geneve/fix/vuln-aws-jackson
fix: upgrade AWS SDK to 2.55.4 to resolve NexusIQ vulnerability
2026-09-29 08:28:33 +02:00
.github Add CODEOWNERS file for repository ownership 2026-05-19 12:05:09 +02:00
pre-plainte-core suppression des overrides inutiles + repartition des dependances dans les modules necessaires 2026-09-25 10:48:39 +02:00
pre-plainte-cypress suppression des overrides inutiles + repartition des dependances dans les modules necessaires 2026-09-25 10:48:39 +02:00
pre-plainte-doc UX improvements 2026-07-20 21:37:04 +02:00
pre-plainte-ihm suppression des overrides inutiles + repartition des dependances dans les modules necessaires 2026-09-25 10:48:39 +02:00
pre-plainte-infrastructure suppression des overrides inutiles + repartition des dependances dans les modules necessaires 2026-09-25 10:48:39 +02:00
pre-plainte-rest suppression des overrides inutiles + repartition des dependances dans les modules necessaires 2026-09-25 10:48:39 +02:00
.editorconfig Release initiale Open-source 2026-05-19 11:12:41 +02:00
.gitignore Release initiale Open-source 2026-05-19 11:12:41 +02:00
.m2-settings.xml Release initiale Open-source 2026-05-19 11:12:41 +02:00
AGENTS.md Cypress - reprise du cas nominal depuis les améliorations récentes 2026-06-29 15:34:54 +02:00
argfile.conf Release initiale Open-source 2026-05-19 11:12:41 +02:00
CODE_OF_CONDUCT.md Release initiale Open-source 2026-05-19 11:12:41 +02:00
CONTRIBUTING.md Release initiale Open-source 2026-05-19 11:12:41 +02:00
Dockerfile correction ci et dockerfile 2026-07-17 15:03:50 +02:00
import-ripol.sh Retirer le fallback vers import-ripol.py 2026-07-17 16:25:52 +02:00
import_csv_to_sqlite.py Retirer le fallback vers import-ripol.py 2026-07-17 16:25:52 +02:00
LICENSE.md Release initiale Open-source 2026-05-19 11:12:41 +02:00
pom.xml fix: upgrade AWS SDK to 2.55.4 to resolve NexusIQ vulnerability 2026-09-29 08:24:36 +02:00
README.md Release initiale Open-source 2026-05-19 11:12:41 +02:00
sonar-project.properties Retours sonar 2026-07-01 17:47:31 +02:00

Pré-plainte

Présentation de l'application

L’objectif principale de cette application est de simplifier le processus autour des dépôts de plainte pour les plaignants et faciliter le traitement par les ASP/Policiers. L’application pré-plainte en ligne est une application web de type e-démarche. Elle fonctionne sans authentification et permet à quiconque de pré déposer une plainte depuis n’importe où avec une connexion internet et un smartphone/tablette/ordinateur.

Concrètement, l’application permet de :

  1. Saisir ses informations personnelles, celles d’un tiers ou celles d’une personne morale.
  2. Vérifier l’adresse e-mail de l’utilisateur via l’envoi d’un code sécurisé et une validation CAPTCHA.
  3. Aider à la saisie grâce à des listes de références métier, utilisation de codes RIPOL « Recherches Informatisées de Police » pour faciliter et fiabiliser certaines informations (mapping avec le backoffice Police MyAbi).
  4. Prendre un rendez-vous dans un poste de police en utilisant le service de gestion des RDV eSirius via une API.
  5. Enregistrer un brouillon et le reprendre plus tard à l’aide d’un numéro envoyé par email.
  6. Générer un document PDF résumant l’ensemble des informations saisies.

Le projet repose sur :

  • un backend Spring Boot en architecture hexagonale ;
  • un frontend Vue 3 / TypeScript / Vuetify ;
  • des tests d'intégration frontend avec Cypress ;
  • une documentation technique dédiée dans un module séparé.

application pré-plainte

application pré-plainte - prise de rendez-vous

Liste des modules

Pour le détail de l'architecture backend, voir le README du module pre-plainte-core.

Construction

Pré-requis

  • JDK 21
  • Maven
  • Node.js 22+

Comment construire

mvn clean install

Démarrage

Application complète

Pour démarrer le backend Spring Boot :

cd pre-plainte-rest
mvn spring-boot:run

Le backend expose ses endpoints sous /api, par exemple :

  • /api/preplainte
  • /api/email-challenges
  • /api/ripol
  • /api/esirius

L'application web packagée est servie par le backend via les ressources statiques.

Frontend seul

Pour démarrer uniquement le frontend en local :

cd pre-plainte-ihm
npm run dev

L'application web sera disponible sur :

http://localhost:5173/

Livraison

La stratégie de branching de l'application est Gitflow.

Le projet contient une configuration GitLab CI/CD et SonarQube à la racine du dépôt.

Astuces

Tests Cypress

Le module pre-plainte-cypress contient les scénarios de tests d'intégration frontend.

Pour ouvrir l'interface graphique de Cypress :

cd pre-plainte-cypress
npm run cy:open

Voir le README du module Cypress pour les détails d'installation et d'exécution.

Documentation projet

La documentation technique est centralisée dans le module pre-plainte-doc.

Style du code

Le style du code est défini par le fichier .editorconfig à la racine du projet.

Pour certains IDE, il faut installer un plugin permettant son intégration.

L'information sur le format, les IDE et les plugins compatibles se trouve sur :

https://editorconfig.org