Skip to content

Build AI that knows your data.

The production-ready RAG starter kit for Next.js. Ingest PDFs and URLs in seconds, chat with your documents using Claude Haiku and Voyage AI embeddings, and deploy to Vercel in minutes — not weeks.

  • No signup for the demo
  • MIT license
  • Lifetime updates
fastrag.live/chat

Illustration of the live demo. Try the real thing at /chat.

  • Next.js
  • Claude Haiku
  • Voyage AI
  • Pinecone
  • LangChain.js
  • Cheerio
  • React
  • Tailwind CSS
  • Framer Motion
  • Vercel
At a glance

What is FastRAG?

FastRAG is a retrieval-augmented generation (RAG) starter kit for Next.js. It turns PDFs and web pages into searchable vector embeddings, then answers questions about them with Claude, streaming each answer together with the sources it used.

You buy the source code once, add your own API keys, and deploy it to Vercel. Because it is plain JavaScript in your repository, you can swap the model, the vector database or the embeddings without a rewrite.

A good fit if…

  • You build in Next.js and want RAG without wiring it up from scratch
  • You need PDF and web-page Q&A with source citations
  • You want readable code you can restyle, extend and ship inside your own products

Not a fit if…

  • You want a hosted chatbot you configure without code
  • You need to index pages that only render with JavaScript
  • You want a different framework (the kit is Next.js, JavaScript)
What it is
A source-code starter kit, not a hosted service
Framework
Next.js (Pages Router), JavaScript
Chat model
Claude Haiku 4.5, streamed over SSE
Embeddings
Voyage AI voyage-3.5 (1024 dimensions)
Vector database
Pinecone, one namespace per tenant
Ingests
PDFs up to 20 MB and public web pages
Price
From $19 one-time, lifetime updates
Delivery
Private GitHub repository via Gumroad
One-time price
$19One-time priceStarter kit, lifetime updates
Per PDF
20MBPer PDFParsed, chunked, embedded
Free embed tokens
200MFree embed tokensVoyage AI free tier
Commercial license
MITCommercial licenseBuild and sell what you make
What's inside

Retrieval that actually understands your data

Everything between a PDF or URL and a cited answer — ingestion, embeddings, vector search and streaming chat — already wired together.

Scraping

Web scraping engine

Paste any URL — docs site, blog or landing page. Cheerio targets semantic zones like <main> and <article>, strips boilerplate and vectorizes clean text. Fully serverless.

No headless browser required

Ingestion

PDF ingestion pipeline

Drag and drop any PDF up to 20MB. Multipart upload with Formidable, text extraction with pdf-parse, and chunking with configurable overlap.

Returns chunk stats on completion

Embeddings

Voyage AI embeddings

Anthropic's recommended embedding model — voyage-3.5. Separate document and query embedders optimise the vector space for retrieval.

200M free tokens to start

Streaming

Real-time Claude streaming

claude-haiku-4-5 streams answers token by token over Server-Sent Events. The first event carries source citations before any text arrives.

Sources arrive before the answer

Multi-tenant

Namespace isolation

Each user's documents live in a private Pinecone namespace. One index, many tenants, no cross-contamination. Swap the demo id for a userId.

User-scoped vector buckets

Demo safety

Per-visitor rate limiting

Built-in demo protection: 5 messages and 3 ingestions per visitor every 24 hours, with a resetAt timestamp so the UI shows an exact countdown.

Usage meter included

  • Retrieval-first RAG

    RecursiveCharacterTextSplitter chunking, a 0.3 cosine threshold, and a graceful fallback when nothing relevant is found.

  • No black boxes

    Every API route lives under pages/api. Swap the LLM, vector DB or embeddings — it is your code.

  • Lifetime updates

    Buy once, pull every future update from the private GitHub repo. No subscription.

How it works

From raw documents to cited answers

Four steps, all of them readable code in your own repository.

Upload your content

Drop in a PDF or paste any public URL. The pipeline scrapes with Cheerio, parses with pdf-parse, and chunks with LangChain's RecursiveCharacterTextSplitter — 1000-character chunks with 200-character overlap by default.

pages/api/ingest-url.js
// pages/api/ingest-url.js// → fetch URL with 15s timeout// → load HTML into Cheerio// → remove script/style/nav/footer// → target <main> or <article> first// → chunk text (1000 chars, 200 overlap)// → embed + upsert to Pinecone namespace // pages/api/ingest-pdf.js// → parse multipart upload (max 20MB)// → extract text with pdf-parse// → chunk → embed → upsert// → return { chunksIngested, totalCharacters }
Built for developers

Readable code. Yours to change.

FastRAG is not a hosted black box. It is a Next.js project you own — every API route, prompt and retrieval setting is plain JavaScript you can read, fork and ship under your own brand.

  • Swap the LLM — isolated in lib/claude.js
  • Swap the vector DB — isolated in lib/vector-store.js
  • Swap the embeddings — isolated in lib/embeddings.js
  • Plain Next.js Pages Router API routes, no hidden abstractions
pages/api/chat.js
// Scrape any URL — Cheerio, no headless browser neededconst text = await scrapeUrl('https://docs.example.com');const chunks = await chunkText(text);const embeddings = await embedBatch(chunks); // voyage-3.5 // Store in Pinecone under a namespaceawait upsertVectors(embeddings, namespace); // Stream Claude Haiku responses with source citationsconst stream = anthropic.messages.stream({  model: 'claude-haiku-4-5-20251001',  system: buildSystemPrompt(contextChunks),  messages: [{ role: 'user', content: query }],}); // First SSE event carries sources before text beginsres.write(`data: ${JSON.stringify({ sources, hasContext })}`);
Solutions

Ask questions, get useful answers

One pipeline, many products. Here is what developers can build on top of it.

Knowledge base

Internal company wiki

Let employees query docs, PDFs and internal pages in plain English. Ingest a URL with one paste — no Notion API, no Confluence plugin.

PDFs + URLs

Support

AI support agent

Train on your help docs, FAQs and product manuals. Answers are grounded in your content, with source citations on every response.

Source-cited answers

EdTech

Course tutor

Upload lecture notes, textbooks and syllabi so students get cited answers from the course material instead of searching PDFs.

Notes + textbooks

Legal

Contract & policy Q&A

Upload NDAs, contracts and compliance PDFs and query them conversationally — each answer points back to the source document.

Up to 20MB per PDF

Developer tools

Code docs search

Point FastRAG at an API reference, README or changelog. Scrape any docs URL and let developers ask instead of hunt.

Any docs URL

E-commerce

Product advisor

Ingest your catalog, specs and reviews to build a conversational shopping assistant grounded in your own data.

Grounded in your catalog

Why trust this

Built by one developer, for developers

No invented logos or testimonials — just the things you can verify yourself.

  • 48-hour delivery guarantee

    If the product does not reach you within 48 hours of purchase, you get a full refund. No questions asked.

  • Try before you buy

    The live demo runs real Claude Haiku streaming and real Pinecone retrieval — no signup required.

  • MIT commercial license

    Use it in unlimited client and personal projects. Charge for what you build and keep the revenue.

Pricing

Pay once. Own it forever.

Launch pricing is live for a limited time. One purchase, unlimited projects, lifetime updates.

Starter

Everything you need to ship a production RAG app this weekend. Built for solo developers and indie hackers.

$19one-time$29
Get Starter Kit
  • Full Next.js source code (Pages Router)
  • Web scraping — Cheerio, serverless-safe, no headless browser
  • PDF ingestion — up to 20MB per file
  • Claude Haiku streaming via SSE
  • Voyage AI embeddings — 200M free tokens
  • Pinecone vector store with namespace isolation
  • IP-based demo rate limiting
  • Mobile-responsive chat UI
  • Private GitHub repository access
  • Lifetime updates
  • MIT commercial license
Most popular

Pro

Advanced features for teams building multi-tenant SaaS products. Includes admin tooling, auth and priority support.

$49one-time$79
Get Pro Kit
  • Everything in Starter, plus:
  • Multi-tenant admin dashboard
  • Per-user analytics & token usage tracking
  • Auth-ready — NextAuth.js integration
  • Rate limiting per namespace
  • Slack/webhook notifications on ingest
  • Custom system prompt UI per user
  • Pinecone metadata filtering
  • Priority email support — 24hr response

Compare all plans

FAQ

Questions, answered

You get an invite to a private GitHub repository (or a ZIP download) containing the complete Next.js source code — ingestion API routes, Pinecone configuration, Claude chat streaming, the Cheerio web scraping pipeline, Voyage AI embeddings, and per-visitor demo rate limiting. Everything is yours, forever.

No. If you know how to add an API key and run 'npm install', you can have a RAG system running locally in minutes. The setup is documented step by step and there is no ML theory required.

No. FastRAG is a one-time purchase — you own the code. The only recurring costs are your own infrastructure bills: Anthropic API usage, Voyage AI's free token tier, Pinecone's free serverless tier, and Vercel's hobby plan. Most developers run it for under $5/month.

Next.js (Pages Router), React, Tailwind CSS, LangChain.js, Anthropic Claude Haiku (chat streaming), Voyage AI voyage-3.5 (embeddings), Pinecone (serverless vector DB), and Cheerio (web scraping — no headless browser needed). Key environment variables are ANTHROPIC_API_KEY, VOYAGEAI_API_KEY, PINECONE_API_KEY and PINECONE_INDEX.

Yes. The LLM integration is isolated in lib/claude.js. Switching to GPT-4o, Gemini, Groq or any other provider only changes the provider SDK — the SSE response format stays the same.

Yes. The vector store is isolated in lib/vector-store.js. Swapping to Weaviate, Qdrant, Chroma or pgvector means re-implementing its upsert and query functions; nothing else in the codebase needs to change.

Yes. The embedding logic is isolated in lib/embeddings.js. embedBatch() and embedQuery() are the only interface the rest of the app uses — swap in OpenAI, Cohere or any LangChain-compatible embeddings.

Yes. FastRAG ships with an MIT license. You can use it to build and sell SaaS products and deliver client work. The only restriction is that you cannot resell the source code itself.

Every update goes to the private GitHub repo. You git pull to get the latest changes — you never need to re-purchase a new version.

Email the address in the README and expect a reply within 24 hours on weekdays. There is also a troubleshooting guide in the docs covering the most common setup issues.

FastRAG is delivered instantly via Gumroad. We offer a 48-hour delivery guarantee: if the product doesn't reach you within 48 hours you get a full refund, no questions asked. Outside of that, all sales are final since it is a digital product with instant access. If you hit a setup issue, email first — most problems are resolved within 24 hours.

Ready to build AI that knows your data?

Grab the source, wire up your API keys, and have a production RAG app running today.

Pay once · MIT license · Lifetime updates