Inspiration
In the legal profession, missing a statutory court deadline is a catastrophic failure. A single miscalculated filing date can trigger default judgments against clients, severe court sanctions, or career-ending malpractice claims.
Despite these immense stakes, litigation docketing in many law firms remains manual, error-prone, and fragmented. Attorneys and paralegals must mentally parse dense statutory authorities (such as the Federal Rules of Civil Procedure in the US or the Code of Civil Procedure 1908 in India), cross-reference court holiday calendars, and manually input reminders into their calendars.
I built JurisSync to replace manual docket math with a deterministic, multi-jurisdictional statutory computation engine that calculates statutory litigation deadlines and synchronizes them directly into attorneys' existing calendar workflows.
What it does
JurisSync is an automated statutory docketing and calendar synchronization gateway that converts procedural litigation events into compliant docket schedules:
- Multi-Jurisdiction Matter Tracking: Manages litigation cases across jurisdictions (e.g., US Federal District Courts under FRCP and Indian Civil Courts under CPC 1908) with case captions, docket numbers, and counsel metadata.
- Statutory Deadline Calculation Engine: Computes procedural deadlines based on legal triggers:
- FRCP Rule 12(a)(1)(A)(i): 21-day responsive pleading deadline upon summons service.
- Local Civil Rule 7.1 / FRCP 6: Synchronized 14-day opposition brief and subsequent 7-day movant reply schedules.
- FRCP Rules 33 & 34: 30-day discovery response & objection windows.
- CPC 1908, Order VIII, Rule 1: 30-day standard Written Statement deadline with automatic tracking of the 90-day outer condonation limit.
- Statutory Weekend & Court Holiday Rollover: Automatically skips non-business days, weekends, and gazetted/fixed court holidays (e.g., Juneteenth, Veterans Day, Republic Day, Gandhi Jayanti), rolling deadlines forward to the next statutory court day.
- RFC 5545 iCalendar Calendar Synchronization: Generates
.icscalendar packages with statutory filing windows (9:00 AM – 5:00 PM), case metadata, and built-in 24-hour advance display alarms (VALARM) compatible with Google Calendar, Microsoft Outlook, and Apple Calendar. - Command Center Dashboard: A dark-mode interface with live operational metrics, real-time search, jurisdiction filtering, and task completion toggles.
How I built it
- Backend & API: Built with FastAPI for high-throughput, low-latency REST endpoints and automated OpenAPI documentation (
/docs). - Database & ORM: SQLAlchemy ORM paired with an embedded SQLite database, managing relational schemas for legal matters and associated docket deadlines.
- Data Validation & Typing: Pydantic v2 models enforcing strict type safety and schema validation for API requests and statutory calculation payloads.
- Statutory Rules Engine: A modular Python engine implementing statutory date-math algorithms and business-day rollover logic.
- Calendar Generation: Uses the
icalendarlibrary to generate standard RFC 5545 calendar events and alarms. - Frontend & UI: Pure Vanilla HTML5, modern CSS3 with glassmorphism, responsive grid layouts, FontAwesome icons, and Google Fonts (Plus Jakarta Sans & JetBrains Mono).
- Testing & Quality Assurance: Comprehensive test suite written in pytest testing statutory date calculations, weekend rolls, holiday exclusions, API endpoints, and
.icsgeneration.
Challenges I ran into
- Statutory Rollover Edge Cases: Court deadline rules vary depending on whether the computation period counts calendar days or business days, and how final dates that land on weekends or court holidays must roll forward. I had to design recursive date-advancement logic that checks both weekend state and jurisdiction-specific holiday registries.
- RFC 5545
VALARMProtocol Compliance: Implementing standards-compliant calendar alarms required exact timedelta serialization so that different calendar clients (Google Calendar vs. Apple Calendar vs. Outlook) properly recognize advance reminder triggers. - Pydantic V2 and Starlette Migration: Upgrading template response signatures and schema configs to modern FastAPI/Starlette standards without introducing runtime caching issues.
Accomplishments that I'm proud of
- 100% Deterministic Statutory Calculations: Built a rule engine that correctly accounts for statutory citations across both US Federal and Indian Civil legal systems.
- Zero-Dependency Modern Frontend: Created a fast web dashboard with live stats, search, filtering, and modal reference guides without bulky JavaScript framework overhead.
- 1-Click Calendar Sync: Enabled legal teams to bridge their case management directly into their personal or firm-wide calendars in a single click with pre-configured alarms.
- Comprehensive Automated Test Suite: Achieved complete test coverage across core statutory engine calculations and REST API endpoints.
What I learned
- The critical nuance between different jurisdictions' procedural time computation rules (e.g., federal calendar-day roll vs. local rule reply schedules).
- How the RFC 5545 standard handles time zones, display alarms (
VALARM), and event priorities in distributed calendar systems. - The importance of designing clean, responsive developer-and-user-friendly tools for domain-specific industries like legal technology.
What's next for JurisSync
- State & Local Court Rules Expansion: Adding California (CCP), New York (CPLR), Texas (TRCP), and UK Civil Procedure Rules (CPR).
- Direct CalDAV & Microsoft Graph Integration: Two-way automatic calendar sync directly to Microsoft 365 Exchange and Google Workspace without manual file downloads.
- Automated Court Docket Scraping (PACER / e-Courts): Ingesting court docket notifications via webhooks and automatically generating deadlines from electronic court filing (ECF) emails.
- Multi-Attorney Team Assignment & Reminders: Automated Slack, Email, and SMS notifications assigned to specific partners, associates, and paralegals on a matter.
Built With
- css3
- fastapi
- html5
- icalendar
- javascript
- jinja
- python
- redoc
- restapi
- sqlalchemy
- sqlite
- starlette
- swagger
- uvicorn
Log in or sign up for Devpost to join the conversation.