03 / DEVELOPER TOOLS
CHECKMARKED
Build a portfolio surface where every claim is verifiable. Reduce recruiter skepticism by grounding narrative in commit-level GitHub evidence.
- OUTCOME
- Two-stage analysis pipeline: deterministic scan for instant feedback, deeper AI passes for narrative. SSE streaming, Zod-bound outputs, multi-repo support.
- STACK
- Next.js · Azure OpenAI · Postgres
- Deterministic first, AI second
- The pipeline runs in two stages for a reason that is about latency, not accuracy. A deterministic scan of the repository returns structure, languages, and commit patterns almost immediately, so the interface has something true to show within a second. The slower AI passes then layer narrative on top of facts that are already on screen.
- Streaming because the wait is the product
- Deep analysis of several repositories takes real time. Server-sent events stream each pass as it completes rather than holding everything behind one spinner, which turns a long wait into visible progress. It also means a slow model call degrades one section instead of the whole page.
- Claims bound to evidence
- Every statement the analysis produces points at commit-level evidence, and every model call is bound by a Zod schema so the output cannot invent a field or a category the interface does not handle. The constraint is what makes the claims checkable — an unverifiable portfolio is the problem being solved.
- EVIDENCE
- COMMIT-LEVEL
- ANALYSIS PASSES
- 2-STAGE
- REPOS / SCAN
- MULTI
CAPABILITIES SHIPPED HERE
- CONSTRAINED OUTPUTS
- Zod schemas around every model call. Centralized prompts. Output that cannot drift past your contract.
