AI-powered legal letter drafting with mandatory attorney review.
| Document | Purpose |
|---|---|
STRUCTURE.md |
Primary architecture reference — schema, routes, status machine, pipeline |
docs/FEATURE_MAP.md |
Comprehensive feature inventory (Phases 1–86+) |
docs/PIPELINE_ARCHITECTURE.md |
AI pipeline deep-dive (4-stage: Perplexity → Opus × 2 → Sonnet vetting) |
SPEC_COMPLIANCE.md |
Spec compliance tracking |
docs/CODE_REVIEW_VERIFIED.md |
Code review issue tracker |
docs/AUDIT_REPORT_PHASE74.md |
Phase 74 full platform audit |
docs/SUPABASE_MCP_CAPABILITIES.md |
Supabase MCP connector reference |
docs/GAP_ANALYSIS.md |
Historical gap analysis — all 9 gaps completed |
docs/TTML_REMAINING_FEATURES_PROMPT.md |
Historical feature gap prompt (Phase 48) |
docs/REVALIDATION_REPORT_PHASE62.md |
Phase 62 validation snapshot (historical) |
docs/VALIDATION_REPORT_PHASE73.md |
Phase 73 validation snapshot (historical) |
AUDIT_REPORT.md |
Phase 0 audit (historical) |
CONTENT-STRATEGY.md |
SEO content strategy, blog calendar, keyword map |
todo.md |
Full feature and bug tracking (all phases) |
- Frontend: Vite · React 19 · Wouter · Tailwind CSS · shadcn/ui
- Backend: Express · tRPC · Drizzle ORM
- Database: Supabase (PostgreSQL + RLS)
- Auth: Supabase Auth (JWT)
- Payments: Stripe (subscriptions + per-letter checkout)
- Email: Resend (transactional, 17 templates)
- AI Pipeline: Perplexity
sonar-pro(primary research; Claude fallback if key missing) → Anthropic Claude Opus (draft + assembly) → Anthropic Claude Sonnet (vetting); local 4-stage pipeline is primary, n8n is dormant alternative
pnpm install # install dependencies
pnpm dev # start dev server (port 5000)
pnpm test # run Vitest suite
pnpm tsc --noEmit # TypeScript checkAfter every implementation:
pnpm test— all ~617 tests must pass (41 test files)pnpm tsc --noEmit— 0 TypeScript errorspnpm build— production build must succeed- Verify no
ALLOWED_TRANSITIONSregression inshared/types.ts