
Leidos GenAI
Capstone Partner
GenAI workspace that turns government BAAs and RFPs into mined requirements and drafted proposal sections—built with Leidos and DARPA I2O.
- Role
- Frontend · prompts · writing
- Team
- 6-person capstone
Problem
Proposal teams spend weeks manually parsing dense solicitations. Missed SHALL / MUST language risks disqualification; handoffs live in spreadsheets and email.
Architecture
┌──────────┐ ┌──────────────┐ ┌────────────────┐
│ Client │───▶│ Next.js API │───▶│ PDF / OCR │
│ Editor │ │ Route Hdlrs │ │ extractor │
└────┬─────┘ └──────┬───────┘ └───────┬────────┘
│ │ │
│ ▼ ▼
│ ┌──────────────┐ ┌────────────────┐
│ │ Req. miner │◀───│ Text + spans │
│ │ shall/must │ └────────────────┘
│ └──────┬───────┘
│ │
│ ▼
│ ┌──────────────┐ ┌────────────────┐
│ │ RAG library │───▶│ Org context │
│ │ embeddings │ │ + policies │
│ └──────┬───────┘ └────────────────┘
│ │
│ ▼
│ ┌──────────────┐
│ │ Claude API │ schema-bound JSON
│ │ + confidence │
│ └──────┬───────┘
│ │
▼ ▼
┌──────────────────────────────────┐
│ Draft blocks + RBAC workspace │
│ Viewer │ Editor │ Admin │
└──────────────────────────────────┘«enumeration» Role Viewer Editor Admin Viewer ──view──▶ Proposal, Dashboard Editor ──edit──▶ Upload, Generate, RAG lib Admin ──admin─▶ Capital, Users, All Editor
Stack
- Next.js 16
- React 19
- TypeScript
- Supabase + SSR
- OpenAI SDK
- PostgreSQL
What we built
- PDF ingest with OCR fallback → modal-verb requirement mining → org-context RAG → Claude drafts with per-block confidence
- Grammarly-style highlighting for prescriptive language in the editor
- Typed API contracts for generation payloads; Viewer / Editor / Admin fail-closed permissions
- Dashboard KPIs: pipeline health and avg. confidence tracked at 73%
Outcome
- End-to-end upload-to-draft prototype demoed to Leidos stakeholders
- Shipped without a live BAA corpus—synthetic libraries, tight prompt contracts, explicit confidence labeling
- My focus: frontend requirement UX, prompt tuning, and stakeholder-facing writeups