How tarique-zaib/draftlex works
DraftLex is a legal practice management system for advocates. Its main workflow is managing clients and matters, scheduling hearings, and creating or handling case documents through a React interface and authenticated .NET API. Backend controllers enforce advocate ownership and delegate selected operations to application handlers and services; persistence is provided by PostgreSQL through EF Core. Separate capabilities include AI-assisted drafting and matter chat, dashboard activity, bilingual search, and a notification agent that sends hearing reminders. The README documents broad features; unsampled implementation details are represented only where the tree supports them.
Main entry points: client.ts API clients · App.tsx React workspace · DraftLexDbContext.cs EF Core context · DocumentsController.cs Document API
Components 29
Advocate workspace
- React workspace
frontend/src/App.tsx - Client workspace
frontend/src/pages/ClientDetails.tsx - Matter workspace
frontend/src/pages/MatterWorkspace.tsx - Hearing calendar
frontend/src/pages/Hearings.tsx - Document workspace
frontend/src/pages/Documents.tsx - AI drafts
frontend/src/pages/AIDrafts.tsx - Global search
frontend/src/components/GlobalSearch.tsx - API clients
frontend/src/api/client.ts
API and application
- Authentication API
backend/DraftLex.Api/Controllers/AuthController.cs - Client API
backend/DraftLex.Api/Controllers/ClientsController.cs - Matter API
backend/DraftLex.Api/Controllers/MattersController.cs - Hearing API
backend/DraftLex.Api/Controllers/HearingsController.cs - Document API
backend/DraftLex.Api/Controllers/DocumentsController.cs - AI and copilot API
backend/DraftLex.Api/Controllers/AIController.cs - Application handlers
backend/DraftLex.Application/Features - Client service
backend/DraftLex.Application/Services/ClientService.cs - Document service
backend/DraftLex.Application/Services/LegalDocumentService.cs
Case records
- EF Core context
backend/DraftLex.Infrastructure/Persistence/DraftLexDbContext.cs - Repositories
backend/DraftLex.Infrastructure/Repositories - PostgreSQL
- PDF export
backend/DraftLex.Api/Services/PdfExportService.cs
AI and drafting
- Legal draft service
backend/DraftLex.Infrastructure/AI/OllamaLegalDraftService.cs - Matter copilot
backend/DraftLex.Infrastructure/AI/MatterCopilotService.cs
Hearing reminders
- Reminder scheduler
DraftLex.NotificationAgent/Services/ReminderScheduler.cs - Agent API client
DraftLex.NotificationAgent/Services/DraftLexApiClient.cs - WhatsApp sender
DraftLex.NotificationAgent/Services/WhatsAppSender.cs
Other components
- Advocate
- Ollama
- WhatsApp service
Connections 40
- Advocate → React workspace: uses
- React workspace → Client workspace: routes to
- React workspace → Matter workspace: routes to
- React workspace → Hearing calendar: routes to
- React workspace → Document workspace: routes to
- React workspace → AI drafts: routes to
- React workspace → Global search: opens
- Client workspace → API clients: requests
- Matter workspace → API clients: requests
- Hearing calendar → API clients: requests
- Document workspace → API clients: requests
- AI drafts → API clients: requests
- Global search → API clients: queries
- API clients → Client API: calls
- API clients → Matter API: calls
- API clients → Hearing API: calls
- API clients → Document API: calls
- API clients → AI and copilot API: calls
- API clients → Authentication API: authenticates
- Client API → Client service: delegates
- Client service → Repositories: reads and writes
- Matter API → Application handlers: dispatches
- Hearing API → Application handlers: dispatches
- Matter API → EF Core context: queries
- Hearing API → EF Core context: queries
- Document API → Document service: delegates
- Document API → EF Core context: queries and writes
- Document API → PDF export: exports
- Document service → Repositories: reads and writes
- Application handlers → EF Core context: accesses
- Repositories → EF Core context: uses
- EF Core context → PostgreSQL: persists
- AI and copilot API → Legal draft service: generates drafts
- AI and copilot API → Matter copilot: delegates chat
- Legal draft service → Ollama: requests generation
- Matter copilot → Ollama: requests responses
- Reminder scheduler → Agent API client: fetches hearings
- Reminder scheduler → WhatsApp sender: sends reminders
- Agent API client → Hearing API: requests schedule
- WhatsApp sender → WhatsApp service: delivers messages