Evidence-first document intelligence

Ask your documents. Check every answer.

Scribe turns private PDFs, DOCX files, notes, and datasets into a searchable knowledge workspace. Every response is grounded in retrieved passages and linked back to its source.

Built end to end by Santosh Kumar with Next.js, TypeScript, PostgreSQL, and Gemini.

workspace / policy-review
3 sources ready
When must a security incident be reported?
Answer
Report a confirmed incident within 24 hours of discovery. Notify the security lead immediately when customer data may be affected.
[1]Security policy · page 8
Ask about your sources…

A complete path from file to verifiable answer.

The visible workflow stays simple while the system handles private storage, asynchronous processing, retrieval, streaming, and citations.

  1. 01

    Private upload

    Vercel Blob

  2. 02

    Extract and chunk

    Async worker

  3. 03

    Semantic retrieval

    Postgres + pgvector

  4. 04

    Grounded response

    Gemini + citations

Engineering decisions

Designed for the failure modes a demo usually ignores.

Scribe is a portfolio project with production-minded boundaries. The codebase includes migrations, route validation, webhook verification, ingestion policies, retrieval evaluation, and focused tests.

Security

Tenant isolation at every boundary

Files, chats, vector search, usage, and billing are scoped by the authenticated Clerk user, not filtered later in the UI.

Reliability

Background ingestion that can recover

Atomic job claims, bounded retries, exponential backoff, idempotent callbacks, and stale-job recovery keep document processing reliable.

Observability

Evidence users can inspect

Answers link to retrieved passages. The RAG inspector exposes chunks, similarity, latency, and grounding signals without cluttering the default workflow.

Next.js 16 + React 19Neon Postgres + pgvectorClerk authenticationVercel BlobVitest

Bring a document. Ask the hard question.

Inspect the answer, its evidence, and the retrieval path behind it.

Open Scribe