Second Brain AI Assistant
ChatGPT — but it actually knows what you've read.
Build the AI product that Readwise's 50,000+ power readers would pay $9/month for. Connect a corpus the user already cares about — their Kindle highlights, Readwise exports, saved articles, internal handbook, codebase — and let them ask: "what did Naval say about leverage?" or "summarize what I've read on Bitcoin policy this month." Streaming token-by-token answers with inline citations linked to the source. Refuses to make things up when the corpus doesn't cover the question. The portfolio outcome: a live URL you can show in 60 seconds, with 3+ real beta users using it weekly.
The product in detail
The product is a chat box with a memory. The user uploads or connects a corpus they already care about — their Kindle highlights, Readwise exports, saved articles, internal company handbook, or their own notes. Then they ask questions: "What did Naval say about leverage?" or "What books mentioned the concept of antifragile?" or "Summarize what I've read on Bitcoin policy this month." Every answer streams in token by token, with inline citations linking to the exact passage in the source document. When the corpus doesn't have the answer, the product says so instead of making something up.
The target user is a power reader — someone who consumes 50+ pieces of long-form content a month. They use Readwise, Pocket, Instapaper, or Reader. They've highlighted thousands of passages they meant to revisit but never go back to. Their second brain is locked in a search-only interface. What they actually want is synthesis: cross-document, cross-time, and conversational. They'd pay $9/month for a chat that can synthesize across everything they've read.
Multiple real startups occupy this exact space. Mem.ai built a self-organizing workspace on top of personal notes (acquired by Reflect AI in 2025). Glean raised $260M to build the enterprise version. Readwise added an AI chat layer on their reading library. The category is real and proven — the gap is the indie / personal-corpus version that doesn't require an enterprise contract. 50,000+ daily Readwise users and 100,000+ Pocket / Reader users are the addressable audience for a personal version.
Technically you build a document ingestion pipeline (parse → chunk → embed → store with metadata), a vector similarity search layer, a streaming chat endpoint that injects retrieved context into the system prompt, refusal prompting for retrieval misses, and inline citation rendering with clickable links. This template — RAG + streaming + citations — is the single most-tested skill set in AI Engineer interviews: RAG appears in 43% of job posts AND 44% of interview questions.
What you ship: a public GitHub repo with 4 reviewable Pull Requests (one per checkpoint), a live deployed URL, a 2-minute Loom that shows the full flow in one take, and 3+ real beta users who used it weekly for at least two weeks. When the interviewer asks "walk me through something you built," this is the answer that gets you past the first round.
Pick what you'll build
This is one project with one skill graph — but you pick the product framing that fits your interests or career goals. Each option below is a viable portfolio piece. We'll narrow it together in the kickoff call.
- Readwise / Pocket power reader — chat with your highlights, articles, books (real audience: 50,000+ daily Readwise users)
- Solo founder — chat with your company's internal handbook, ADRs, and Notion docs
- Open-source maintainer — chat with your codebase + docs (Phind, but for one repo you care about)
- Domain practitioner (lawyer / clinician / analyst) — chat with case files, patient notes, or 10-Ks
- Researcher — chat with your field's arXiv corpus with citation tracking (Elicit-clone for your domain)
- The single most defensible starter project.
- The pitch ("chat with what you've read") is one sentence and every interviewer immediately gets it.
- The skill set — RAG + streaming + citations + grounded prompting — is the highest-overlap territory in the AI Engineer hiring market: RAG hits 43% of job posts AND 44% of interview questions, perfectly aligned.
- Three real startups occupy this exact space (Mem.ai, Glean, Readwise AI).
- Streaming is a tacit must-know — interview-tested in 4% of questions but rarely listed in JDs.
Research backing this project
Every project on projeckt.ai is calibrated against real job posts and real interview questions, not opinion. Here's the data behind this one.
- •Streaming (SSE)
Themes covered
Each chip shows how many of the 46 analysed job posts cite this theme.
Justified by real job posts
Verbatim quotes from the postings that drove the design of this project.
“Develop and optimize RAG pipelines, agent architectures, and LLM-powered systems”
“You have experience building AI products using LLMs, embeddings and other ML technologies.”
“Develop hybrid ML solutions combining statistical models, LLMs, and embeddings-based retrieval techniques”
“Production experience with LLMs: prompt engineering, agent development, evaluation frameworks, MCP, deployment at scale”
What you'll be able to do
- 1Wire an LLM endpoint into a Next.js or Python backend and stream tokens to the browser via Server-Sent Events
- 2Design a document ingestion pipeline: parse → chunk → embed → store with metadata
- 3Reason about chunk size and overlap as a quality-vs-cost tradeoff
- 4Execute vector similarity search and inject retrieved context into a system prompt
- 5Engineer prompts that force grounded answers and refuse when context is insufficient
- 6Render inline citations linked to source chunks (UX pattern)
- 7Build empty, loading, and error states for non-deterministic outputs
- 8Distinguish a 'no relevant context' failure from a 'model is wrong' failure
Tools you'll learn
Hands-on with these tools across the paid and open-source stacks. The Paid / OSS / Both label shows which stack each tool belongs to.
Week-by-week checkpoints
Each checkpoint is a Pull Request to your public GitHub repo. Rohan reviews on the PR; merge = checkpoint complete.
Next.js + TS + Tailwind scaffold. AI SDK installed. useChat hook wired to the LLM. Live deploy with README + architecture sketch.
Chat works in browser; tokens stream visibly; works on mobile.
- •Wiring LLM endpoint into useChat
- •Streaming token-by-token rendering with markdown
- •Designing a system prompt for a known persona
Upload page accepts PDFs and markdown. Server-side chunking (≤500 tokens per chunk, ~50-token overlap). Embeddings generated. Vectors stored with metadata (filename, chunk index). 'Knowledge Base' page lists ingested docs.
Upload 2–3 real documents; vector index shows correct chunk counts; each chunk has retrievable metadata.
- •PDF/markdown text extraction
- •Token-aware chunking strategy (size + overlap)
- •Embedding generation via API or local model
- •Vector DB schema with metadata fields
Chat performs vector search on each query, injects top-K chunks into the system prompt as context, produces grounded answers. Refuses when no relevant context.
Question with answer in docs → correct answer; question without → 'not in knowledge base' refusal.
- •Vector similarity search with top-K retrieval
- •Context-injection prompting
- •Designing prompts that refuse to hallucinate
- •Reasoning about retrieval precision vs recall
Streaming responses include [1] [2] citation markers linked to a footer with source filename + chunk excerpt. Stop-generating button. Empty / loading / error states. 2-min Loom demo recorded.
Demo Loom shows 3 questions end-to-end; all citations clickable and accurate; deployed URL works.
- •Citation tracking through the prompt → response cycle
- •Designing structured-output UI patterns
- •Empty / loading / error states for non-deterministic UI
- •Demo-video craft for portfolio
Pick your stack
Same skills, different credentials. Start free with the OSS stack or use the paid stack to learn directly on production tools.
| Tool | Purpose | License | Hardware | Market equivalent |
|---|---|---|---|---|
| Next.js + TypeScript + Tailwind | Frontend | MIT | Free | Same |
| Vercel AI SDK (useChat) | LLM client + streaming | Apache-2.0 | Free | Same |
| Ollama running Llama 3.1 8B or Qwen 2.5 7B | Local LLM | Llama Community / Apache-2.0 | macOS M1+ or 16GB RAM | OpenAI GPT-4o |
| nomic-embed-text via Ollama | Embeddings | Apache-2.0 | Runs anywhere (~300MB) | OpenAI text-embedding-3 |
| Chroma | Vector storage | Apache-2.0 | Docker, single command | Pinecone |
| Coolify on $5/mo VPS (or free Cloudflare Pages) | Hosting | Apache-2.0 (Coolify) | Linux VPS | Vercel |
Estimated cost: $0/month (or $5/month if self-hosting on a VPS).
Interview questions you'll be ready for
Real questions from 13 sources, mapped to the skills this project builds.
Ready to start building?
Book a free 30-minute project planning session. We'll tailor this project to your stack, team, and goals.