Fast product surface
Next.js 16 and React 19 are deployed through OpenNext on Cloudflare Workers, with API proxying and object delivery at the edge.
Projects / Synapse
Solo product design & engineering
A multi-tenant research workspace that turns document collections into grounded answers, inspectable evidence, and reusable visual artefacts.
00 / Overview
Synapse ingests PDFs and Google Drive libraries, understands layout and visual regions, and answers across one or many documents with page-level evidence. The system was built end to end—from the Next.js product and tenant model to the FastAPI orchestration layer, GPU workers, retrieval pipeline, and evaluation harness.
01 / Product walkthrough
01/15

A research workspace built around verifiable answers.

The product story connects ingestion, reasoning, and cited output.

Documents become scoped knowledge bases with visible processing state.

Answers remain connected to their source chunks, pages, figures, and tables.

Shared conversations can search approved libraries across organizations.

Members, roles, invitations, and library access are explicit.

A goal can become a structured visual or research artefact.

Planning, data acquisition, construction, and validation stay visible.

Important source material can be kept beside the conversation.

Generated and retrieved visuals remain reusable.

Agent output extends from prose into charts and diagrams.

Entities and relationships are extracted from selected knowledge.

A navigable representation exposes how concepts connect.

Consumption and processing are surfaced instead of hidden.

The workspace keeps its infrastructure legible to the user.
02 / System
The product separates the edge experience, GPU execution, and shared state so ingestion and chat workloads can scale without blurring tenant boundaries.
Next.js 16 and React 19 are deployed through OpenNext on Cloudflare Workers, with API proxying and object delivery at the edge.
FastAPI coordinates queue-backed stages. The worker pool scales against pending work and packs model processes to the available VRAM budget.
Supabase holds organizations, membership, conversations, jobs, and pgvector embeddings; R2 stores source and derived artefacts.
03 / Multi-agent retrieval
Query classes route work differently. Spotlight questions stay narrow; comparison, aggregation, multi-hop, and multi-entity requests widen retrieval and can run bounded gap-filling passes before synthesis.
Classifies intent, rewrites the query, and decomposes complex requests.
Fans out dense and lexical search, expands neighbours, then reranks evidence.
Turns retrieved passages into concise notes that retain chunk and page attribution.
Checks relevance and sufficiency before the answer is allowed to proceed.
Runs bounded critique rounds and creates focused searches for missing evidence.
Builds the final answer from the consolidated evidence and available visuals.
Flags unsupported claims and triggers a correction pass when required.
04 / Document intelligence
A queue-driven seven-stage pipeline synchronizes files, detects layout, extracts text and visual regions, chunks the resulting representation, embeds it, and builds topical clusters. Text extraction and image captioning can run in parallel after layout.
Model roster
05 / Agent artefacts
A separate agent mode can plan a visual task, acquire data, build a Vega-Lite or Mermaid specification, validate it, render it, and narrate assumptions. Data values remain bound in code so the model does not invent the chart’s numbers.
06 / Platform foundation
Organizations own their libraries. Membership, invitations, sharing, and team-chat access are modeled explicitly, while the processing plane keeps jobs recoverable and auditable.
07 / Evaluation design
The repository includes a DOUBLE-BENCH-oriented harness for page/document retrieval, dual-judge answer review, RAGAS, citation accuracy, honesty, latency, and throughput. The system map explains the measurement path, followed by the supplied retrieval and dual-judge benchmark snapshots.
Benchmark snapshots
Retrieval quality
Answer quality