Prolexio Developer Documentation¶
Welcome to the Prolexio developer documentation portal. This site provides everything you need to get started, understand the architecture, and contribute to the project.
Quick Links¶
- Getting Started — Set up the project in 5 minutes
- Architecture — Crate structure, request flow, database schema
- Conventions — Naming, language, indentation, PR checklist
- ADR — Architecture Decision Records
Project Overview¶
Prolexio is a case management application for French commissaires de justice (formerly huissiers de justice). It handles:
- Case management — Create, track, and manage legal cases (dossiers)
- Legal deeds — Generate and manage actes, significations, saisies
- Document generation — Template-based DOCX/PDF export with variable resolution
- Financial tracking — Claims, interests, payments, and financial statements (décomptes)
- Participant management — Individuals, companies, courts with addresses, phones, emails
- Multi-office support — Multiple études with office-scoped data and theming
Tech Stack¶
| Layer | Technology |
|---|---|
| Frontend | SvelteKit + Svelte 5 (runes) |
| Desktop | Tauri 2 |
| Backend | Rust + Axum |
| Database | PostgreSQL |
| ORM | sqlx (compile-time checked queries) |
| PDF Export | Gotenberg (DOCX → PDF via LibreOffice) |
| Auth | Argon2 + JWT + TOTP |
Repository Structure¶
prolexio/
├── client/ # SvelteKit + Tauri frontend
│ ├── src/
│ │ ├── lib/ # Shared components, API clients, stores
│ │ └── routes/ # SvelteKit pages
│ └── src-tauri/ # Tauri Rust commands
├── server/ # Rust backend (Cargo workspace)
│ ├── crates/
│ │ ├── shared/ # Common types, DTOs
│ │ ├── domain/ # Business logic, traits
│ │ ├── infra/ # PostgreSQL, email, export
│ │ └── api/ # Axum HTTP handlers
│ └── migrations/ # SQL migration files
├── docs/ # Documentation
│ ├── dev/ # This site (MkDocs Material)
│ └── scaffolding-rules.yaml
└── CLAUDE.md # AI coding conventions