Litigious
Open-source, modular legal practice management: case management, documents with AI-assisted drafting, time and billing, medical records, and a client portal. Self-hosted, with user-provided API keys routed through the backend for integrations.
At a glance
- Timeframe
- About a year and a half
- Team
- Solo build, with a paralegal consultant advising on day-to-day workflow needs
- Users
- Law firm staff (admins, attorneys, paralegals) and their clients through a portal
- Status
- Active, hosted demo available
- Stack
- React 18, Vite, Tailwind CSS, Node.js, Express, PostgreSQL, Prisma, Socket.IO
Problem and stakes
A law firm I know well had to work through a slow, trial-and-error process to import its existing client database into new practice management software, with no transparency into what the import would change. A firm's client records are the one thing it cannot afford to lose or corrupt, so I built a platform where imports can be previewed before anything is committed, and where the firm owns and can audit the software it runs on.
Decision
1. Modular by design. Every install starts with Core (authentication, roles, firm setup, dashboard), and firms enable modules as needed: case management, documents and AI, billing and time, medical records, communications, video, legal research, and reports.
2. Bring your own keys. Integrations such as AI providers, payments, video, and research run on API keys the user supplies, routed through the backend. There is no built-in payment system because every firm uses different payment links.
3. Dry run before commit. Imports from Clio, MyCase, and PracticePanther preview counts and errors first, and data is committed only after review.
4. Scoped access. Six roles (Super Admin, Admin, Attorney, Paralegal, Assistant, Client) plus case and client scoping, so clients see only what is shared to their portal.
5. Open source and self-hostable. Released under AGPL-3.0, with a demo mode that reseeds sample data every 24 hours.
Technical system
Architecture: browser, React single-page app, Express REST and WebSocket API, PostgreSQL through Prisma. A separate static marketing site can be hosted independently.
Security defaults: JWT in httpOnly cookies, optional TOTP two-factor authentication, rate limiting on auth and API routes, CSRF protection for cookie flows, role-based access with case and client scoping, optional ClamAV scanning of uploads, and secrets held in environment variables only.
Import pipeline: a canonical adapter layer for Clio, MyCase, PracticePanther, and CSV.
Outcome
Target: measure real-world use beyond the demo, starting with how reliably the import dry run predicts the committed result. No adoption or effectiveness figures have been measured yet.