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.2%
  • Vue 26.8%
  • TypeScript 22.5%
  • JavaScript 2.9%
  • HTML 2.2%
  • Other 1.4%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Killian Corbel 92b2e0a495
Merge pull request #135 from republique-et-canton-de-geneve/corbelkil_doc
Suppression des docs architecturales qui ne devraient pas être en ope…
2026-08-24 10:56:43 +02:00
.github Add CODEOWNERS file for repository ownership 2026-05-19 12:05:09 +02:00
pre-plainte-core correction fc + cybercrime en 2026-07-20 11:41:50 +02:00
pre-plainte-cypress UX improvements 2026-07-21 10:15:08 +02:00
pre-plainte-doc Suppression des docs architecturales qui ne devraient pas être en open source. A clear avec git-filter-repo par un admin 2026-08-24 10:55:40 +02:00
pre-plainte-ihm correction frontend 2026-07-22 16:53:07 +02:00
pre-plainte-infrastructure correction frontend + messagetype pour le vol passage de 5357 à 5358 2026-07-17 10:43:35 +02:00
pre-plainte-rest supression value esirius 2026-07-20 12:24:23 +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 correctif vulnerability transitive 2026-07-16 15:34:19 +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

Lobjectif 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. Lapplication 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 nimporte où avec une connexion internet et un smartphone/tablette/ordinateur.

Concrètement, lapplication permet de :

  1. Saisir ses informations personnelles, celles dun tiers ou celles dune personne morale.
  2. Vérifier ladresse e-mail de lutilisateur via lenvoi dun 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 à laide dun numéro envoyé par email.
  6. Générer un document PDF résumant lensemble 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