Inspiration

Most people sign leases, gym memberships, parking tickets, and eviction notices without fully understanding what they are agreeing to. Legal language is deliberately dense. Predatory clauses hide in plain sight. A tenant might sign away their right to request repairs, or miss a 60-day notice window that doubles their rent, simply because the language is confusing. Legal aid is expensive and inaccessible for most people. Jargonaut exists to close that gap.

What it does

Jargonaut analyzes any legal document you paste or upload and returns a plain-language breakdown in seconds. It identifies the document type, assigns a risk score from 1 to 10, explains confusing terms in plain English, surfaces important deadlines, and flags genuinely unusual or potentially illegal clauses with specific reasoning. It works across document types: leases, eviction notices, parking tickets, gym contracts, and more. If a document has no red flags, it says so clearly instead of manufacturing concern.

How we built it

Next.js App Router for the frontend, Tailwind CSS for styling, and a single API route that calls Claude Haiku via the Anthropic API. The model receives the document and returns structured JSON covering seven fields: document type, risk score, summary, key terms, deadlines, red flags, and next steps. The frontend renders each section as its own card. Session history lets users reload previous analyses without another API call. PDF upload extracts text client-side using pdfjs-dist. No database, no authentication, no unnecessary complexity.

Challenges we ran into

Getting the red flags section calibrated correctly was the hardest part. Early versions over-flagged mundane documents, calling out standard replacement fees and no-guarantee clauses as red flags. That undermines trust on a tool designed to help people identify real problems. Tightening the system prompt with explicit examples of what not to flag fixed this. The model now correctly returns an empty red flags array for clean documents. Response time was also a challenge. Initial builds using a larger model averaged 30 seconds per request. Switching to Claude Haiku and trimming the system prompt brought this down to 8 seconds. Intermittent JSON parsing failures were fixed by adding fence-stripping logic and an automatic retry on malformed responses.

Accomplishments we are proud of

Jargonaut correctly identifies the implied warranty of habitability when analyzing a lease that charges $25 per maintenance request, flagging it as a potential legal violation. That is a non-obvious catch that could save a tenant from a genuinely bad situation. The risk score adds immediate clarity. A lease with a jury trial waiver, unlimited landlord entry rights, and one-sided attorney fee clauses scores 8/10 High Risk. A standard parking permit scores clean with no red flags. Users know within seconds how worried to be. The tool also handles non-legal input gracefully. Paste a recipe and it tells you it is not a legal document instead of forcing analysis onto irrelevant content.

What we learned

Prompt engineering matters more than model size for structured extraction tasks. A precise system prompt with a strict JSON schema outperforms a larger model with a vague prompt. Claude Haiku handles this task reliably and fast.

What's next for Jargonaut

Jurisdiction-aware analysis that accounts for state-specific tenant rights laws rather than giving general guidance. A browser extension that detects legal documents on any webpage and offers to analyze them inline. Persistent history across sessions so users can track documents over time. Built with

AI Usage Disclosure

Llama 3.3 70B via Groq powers all document analysis. Claude Code and Cursor were used as development tools during the build.

Built With

  • anthropic-claude-api
  • next.js
  • tailwind-css
  • vercel
Share this project:

Updates