A powerful desktop application for legal professionals to search, analyze, and interact with court case databases using AI.
Database Required — This application requires a proprietary database of court cases to function. Please contact bbc@chintellalaw.com to obtain access.
API Access — You'll need one of the following:
- An OpenAI API key (get one here), or
- A local LMStudio instance running a compatible model (see LMStudio Setup below)
Smart Search — Find cases instantly with exact matching and intelligent fuzzy search that catches near-matches when exact results are sparse.
AI-Powered Case Briefs — Generate comprehensive case summaries with a single click. Choose from general briefs or topic-focused analysis on specific legal issues like custody modifications, attorney fees, jurisdiction, and dozens more.
Interactive Case Chat — Have a conversation with AI about any case. Ask follow-up questions, explore reasoning, and dig deeper into holdings and implications.
Flexible Date Filtering — Narrow results by date range with smart handling of partial dates (year-only or month-only records).
Multiple Export Formats — Save briefs as PDF, Word documents, or plain text. Copy prompts to clipboard for use in other tools.
Customizable Brief Types — Create your own brief templates focused on the legal topics you encounter most, organized into categories for quick access.
# Clone the repository
git clone https://github.com/yourusername/caselaw-viewer.git
cd caselaw-viewer
# Install dependencies
pip install -r requirements.txt
# Run the application
python main.py- Configure your API key — Go to File → Settings and enter your OpenAI API key (or use a local LMStudio model).
- Search for cases — Type in the search bar and select which column to search. Toggle "Show Fuzzy Results" for broader matches.
- Generate a brief — Right-click any case and select "Get Case Brief" or choose a topic-specific brief from the menu.
- Chat with a case — Right-click and select "Chat About This Case" to start an interactive Q&A session.
- Manage brief types — Go to File → Manage Brief Types to create custom templates for your practice areas.
If you prefer to run AI models locally instead of using OpenAI's API, you can use LMStudio:
- Download and install LMStudio from lmstudio.ai.
- Download a compatible model — Models like Llama 3, Mistral, or similar instruction-tuned models work well. Look for models with at least 7B parameters for reasonable quality.
- Start the local server — In LMStudio, go to the "Local Server" tab and click "Start Server." By default, it runs on
http://localhost:1234. - Configure Caselaw Viewer — In File → Settings, select "LMStudio" as your provider and ensure the server URL matches your LMStudio configuration.
The application features a clean dark theme optimized for extended reading sessions, with streaming AI responses that appear in real-time as they're generated.
caselaw-viewer/
├── config/ # Settings, tooltips, and brief type definitions
├── core/ # Search engine, brief registry, HTML parsing
├── data/ # Data loading and chat storage
├── gui/ # Main window, dialogs, and widgets
├── services/ # Case, chat, and search orchestration
└── utils/ # Date filtering, file helpers, tooltips