A modern, full-stack case management system for law firms with AI-powered chat assistance.
More screenshots can be found in the docs/images directory.
- Frontend: Next.js 15 with TypeScript, Tailwind CSS
- Backend: FastAPI (Python 3.12)
- Database: PostgreSQL
- Deployment: HPE Private Cloud AI (HPE PCAI) "Import Framework" compatible (auth-proxy integration not implemented)
- Development: Kubernetes with Tilt for local development
- Create and manage legal cases
- Track case details (defendant, type, status, lead attorney)
- Document upload and management
- Evidence logging with categorization
- Document viewer with download and print capabilities
- LLM integration for case analysis
- Multi-model support (OpenAI compatible API)
- Automatic context building from case data
- Readable document content inclusion
- Video Q&A support
- Automated "persona dramatis" generation
- Debug panel for transparency
- Database browser with pagination
- LLM configuration management
- Record detail viewer
- HPE Private Cloud AI (HPE PCAI) admin access
-
Clone the repository
git clone <repository-url> cd lawfirm-co
-
Start the development environment
tilt up
-
Access the applications
- Frontend: http://localhost:3000
- Backend API: http://localhost:8000
- API Docs: http://localhost:8000/docs
Preferred method is to configure during HPE PCAI "Import Framework" setup.
Create .env files in both frontend and backend directories:
Backend (.env)
DATABASE_URL=postgresql://user:password@postgres:5432/lawfirmFrontend (.env.local)
BACKEND_URL=http://localhost:8000
NEXT_PUBLIC_API_URL=http://localhost:8000Backend:
cd backend
docker build -f Dockerfile.prod -t lawfirm-backend:latest .Frontend:
cd frontend
docker build -f Dockerfile.prod -t lawfirm-frontend:latest .cd backend
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
pip install -r requirements.txt
uvicorn app.main:app --reloadcd frontend
npm install
npm run devOnce the backend is running, visit:
- Swagger UI: http://localhost:8000/docs
- ReDoc: http://localhost:8000/redoc
GET /cases- List all casesPOST /cases- Create a new caseGET /cases/{id}- Get case detailsPOST /cases/{id}/documents- Upload documentPOST /cases/{id}/evidence- Add evidencePOST /chat/cases/{id}- Chat with AI about a caseGET /admin/tables- List database tablesGET /health- Health check
- Non-root user in Docker containers
- Environment variable management for secrets
- API key masking in UI
- Input validation and sanitization
- CORS configuration
Backend:
cd backend
pytestFrontend:
cd frontend
npm testHealth check endpoints are available:
- Backend:
GET /health - Frontend:
GET /api/health
- Fork the repository
- Create a feature branch
- Commit your changes
- Push to the branch
- Create a Pull Request
Copyright © 2025 Justitia & Associates
For issues and questions, please open an issue on GitHub.
- Advanced search and filtering
- RAG from shared documents
- Video Q & A
