LMS- Lawyer Management System
pLMS (Lawyer Management System) è un sistema di gestione per studi legali. Permette di gestire clienti, preventivi, pagamenti, attività e calendario in un’unica applicazione web.
Funzionalità principali:
- Clienti: anagrafica con dati legali e fiscali
- Preventivi: creazione e gestione preventivi con fasi e importi
- Pagamenti: tracciamento pagamenti e riepiloghi
- Attività / Calendario: pianificazione con integrazione Google Calendar
- Documenti: gestione file con integrazione OneDrive
- Todo: promemoria e scadenze
L’app è composta da un backend API e un frontend serviti insieme (anche via Docker). Il backend espone API REST e Swagger; il frontend è una SPA con autenticazione, tema chiaro/scuro e interfaccia reattiva.
Framework e linguaggi
Linguaggi
- C# — Backend (logica, API, accesso dati)
- JavaScript — Frontend (React, build tooling)
- JSX — Componenti React
- CSS — Stili frontend
- JSON — Configurazione (appsettings, package.json, env)
Backend
- .NET — net10.0 (ASP.NET Core)
- ASP.NET Core — Host web, Minimal APIs, middleware
- Npgsql — Driver PostgreSQL
- QuestPDF — Generazione PDF (preventivi/documenti)
- Swashbuckle (Swagger) — Documentazione OpenAPI e UI Swagger
Frontend
- React — ^19.2.0
- React Router — ^7.6.0 (react-router-dom)
- Vite — ^7.3.1 (build e dev server)
- react-datepicker — ^9.1.0 (date picker con locale italiano)
- date-fns — utilità date (anche tramite react-datepicker)
- react-colorful — ^5.6.1 (selettore colore)
- xlsx — ^0.18.5 (import/export Excel)
Database e infrastruttura
- PostgreSQL — Database relazionale
- Docker — Containerizzazione (immagine unica backend + frontend)
- Docker Compose — Orchestrazione locale
Tooling / Dev
- ESLint — Linting JavaScript/React (Frontend)
- @vitejs/plugin-react — Integrazione React in Vite