0%
Aymen
Retour aux projets
WebLivré2026

Mouhami

SaaS juridique pour les cabinets d'avocats : rédaction de documents à la voix, gestion des clients et des dossiers, facturation, avec une application mobile.

Mon rôle
Ingénieur Full Stack
Période
juin 2026 — août 2026
Statut
Livré
Mouhami
Aperçu

Mouhami est une plateforme de gestion de cabinet construite autour de la façon dont les avocats produisent réellement leurs documents : ils dictent. L'avocat parle en arabe, un serveur Whisper auto-hébergé transcrit l'audio au fil du flux via WebSocket, et le texte arrive directement dans un éditeur structuré de documents juridiques — la dictée est le mode de saisie principal, pas une fonction greffée.

Autour de ce flux de rédaction s'articule le quotidien du cabinet : clients et dossiers classés par région et par commune, et génération de factures. Une application compagnon React Native reprend le même système de design bleu marine et or, de droite à gauche, avec un micro central pour la dictée.

Le défi

Le problème à résoudre

Le problème était double : la saisie et le sens de lecture de l'interface. Les avocats auxquels Mouhami s'adresse rédigent en arabe, et faire de la dictée le mode de saisie principal exige une transcription arabe en continu qui alimente directement un document juridique éditable — assurée ici par un déploiement Whisper auto-hébergé plutôt que par une API de transcription tierce. L'interface devait en outre être pensée de droite à gauche dès le départ, et non comme un simple habillage traduit.

Modèles d’actes judiciaires
Modèles d’actes judiciaires
La solution

Comment cela a été construit

La dictée fonctionne comme un pipeline en continu : l'audio part du navigateur ou de l'application mobile vers le serveur Whisper auto-hébergé via un WebSocket sécurisé (wss), et le texte arabe transcrit est inséré dans un éditeur structuré de documents juridiques, pas dans une zone de texte brute.

Les fiches clients et dossiers sont classées par région et par commune, avec sélection groupée et pages de détail par client, et les factures sont générées depuis la plateforme. L'ensemble s'appuie sur un système de design bleu marine et or, de droite à gauche, qui s'étend à l'application React Native, dont l'écran de dictée est centré sur le bouton micro.

Fonctionnalités clés

Ce que ça fait

🎙️

Rédaction par dictée

L'avocat dicte en arabe ; un serveur Whisper auto-hébergé transcrit le flux via WebSocket et injecte le texte directement dans le document.

📝

Éditeur juridique structuré

Le texte transcrit arrive dans un éditeur conçu pour les documents juridiques, pas dans une simple zone de texte, et les brouillons gardent leur structure.

🗂️

Clients et dossiers

Gestion des clients et des dossiers classés par région et par commune, avec sélection groupée et pages de détail par client.

💳

Abonnements par siège

Les abonnements des cabinets sont tarifés par siège, avec un rôle pour chaque membre du cabinet.

🧾

Génération de factures

Les factures sont générées depuis la plateforme, dans le fil du travail quotidien du cabinet.

📱

Application mobile compagnon

Une application React Native avec un micro central pour la dictée, dans le même système de design navy/or RTL que le client web.

Éditeur de documents
Éditeur de documents
Technologies utilisées

Construit avec

Frontend

Next.js

Next.js porte le client web : son routage et son modèle de rendu conviennent à une application qui mêle un éditeur de documents fortement interactif et des écrans classiques pour les clients, les dossiers et la facturation.

TypeScript

TypeScript couvre client, serveur et mobile, si bien que les types métier — dossiers, factures, abonnements — restent cohérents de bout en bout.

Mobile

React Native

React Native a permis de construire l'application compagnon — dont l'écran de dictée à micro central — depuis une seule base de code, en réutilisant le langage visuel bleu marine et or, de droite à gauche, de la plateforme.

Backend

Fastify

Fastify garde la couche API rapide et structurée — des routes validées par schéma pour les clients, les dossiers et les abonnements, avec un surcoût minimal.

Données

PostgreSQL

PostgreSQL héberge le cœur relationnel — cabinets, sièges, clients, dossiers, factures et abonnements sont des enregistrements interdépendants où clés étrangères et intégrité transactionnelle comptent.