Capstone: AI Documentation Assistant
Combine everything from Week 1 into a real AI product: an AI documentation assistant. It uses RAG to answer questions from docs, tools to search and navigate, streaming for real-time UX, and structured output for formatted responses. This is your first portfolio-grade AI project.
Use this at work tomorrow
Deploy this over your team's docs — instant AI-powered documentation Q&A for your entire org.
Learning Objectives
- 1Architect a multi-capability AI application (RAG + tools + streaming)
- 2Build a RAG pipeline over real documentation files
- 3Add tool-use for doc navigation, code search, and link extraction
- 4Implement production streaming UX with error boundaries
- 5Deploy a polished, portfolio-ready AI docs assistant
Ship It: AI docs assistant (portfolio piece)
By the end of this day, you'll build and deploy a ai docs assistant (portfolio piece). This isn't a toy — it's a real project for your portfolio.
I can architect a full AI pipeline combining RAG, tools, agents, and streaming into a production-ready application.
What's the hardest part of building a full AI application?
Week 1 Capstone: Everything Comes Together
This is your first capstone — a real project that combines every skill from Days 1-6: structured output, embeddings, RAG, tools, agents, and streaming UX. You'll build an AI Documentation Assistant that can answer questions about any uploaded documentation, cite sources, and use tools to search and navigate. This is a portfolio-worthy project.
What makes a capstone project different from a tutorial exercise?
Architecture: AI Doc Assistant
The system uses a RAG pipeline with tool-use. Documents are chunked and embedded (Day 2-3). Questions trigger a retrieval tool (Day 4) that searches the vector store. The agent (Day 5) orchestrates multiple tool calls — search, cite, summarize. Responses stream to the UI (Day 6) with source citations. All outputs are structured (Day 1) for consistent rendering.
In the AI Doc Assistant, what triggers the retrieval tool?
Which matters more for RAG answer quality: the LLM model or the chunking strategy?
Design Decisions: What Senior Engineers Ship
A production doc assistant needs: recursive chunking with overlap for context preservation, metadata (filename, page, section) stored with each embedding, hybrid search (semantic + keyword) for better recall, re-ranking retrieved chunks before sending to the LLM, conversation memory so follow-up questions work, and streaming with inline source citations. Each of these is a Day 1-6 skill applied in context.
Why use hybrid search (semantic + keyword) instead of just semantic search?
How many of 6 production criteria must your capstone hit to be 'production-ready'?
Evaluation Rubric: Is It Production-Ready?
Grade your capstone: (1) Does it handle documents over 10 pages? (2) Are source citations accurate and clickable? (3) Does streaming work smoothly? (4) Does it handle 'I don't know' when the answer isn't in the docs? (5) Is there error recovery if the API fails mid-stream? (6) Can it handle follow-up questions using conversation context? Hit 4/6 and you've built something most AI tutorials never cover.
The Full Evolution
Watch one function evolve through every concept you just learned.
Production Gotchas
Chunking matters more than your model choice. Bad chunks = bad answers regardless of GPT-4 vs Claude. Test with real documents, not toy examples — academic papers have different chunking needs than API docs. Users will upload 500-page PDFs — set limits and show progress. Cache embeddings aggressively — re-embedding the same doc is wasteful. Always include a 'Sources' section in responses so users can verify answers.
Code Comparison
Static FAQ vs AI Documentation Assistant
Traditional documentation search vs AI-powered doc Q&A
// Traditional docs: keyword search + static pages
const results = docs.filter(doc =>
doc.content.toLowerCase()
.includes(query.toLowerCase())
);
// Returns matching pages, user reads them
return results.map(doc => ({
title: doc.title,
url: doc.url,
snippet: doc.content.slice(0, 200),
}));
// Problems:
// - Misses semantic matches ("auth" vs "login")
// - User must read full pages to find answers
// - No conversation or follow-up questions// AI docs: semantic search + answer synthesis
import { streamText, tool } from "ai";
import { z } from "zod";
const result = streamText({
model: openai("gpt-4o-mini"),
system: "Answer from the documentation. " +
"Always cite sources with [filename:page].",
tools: {
searchDocs: tool({
description: "Search documentation",
parameters: z.object({
query: z.string(),
}),
execute: async ({ query }) => {
// RAG: embed query → search vector store
const chunks = await vectorSearch(query);
return chunks.map(c => ({
content: c.text,
source: `${c.filename}:p${c.page}`,
score: c.similarity,
}));
},
}),
},
messages: conversationHistory,
});
// Returns: direct answer + source citations
// Handles follow-ups, semantic matching, synthesisKEY DIFFERENCES
- Keyword search misses semantic matches; embeddings catch them
- AI synthesizes answers instead of showing raw pages
- Tool-use lets the agent decide when/what to search
- Conversation history enables follow-up questions
Bridge Map: Full-stack app → AI-native product
Click any bridge to see the translation
Hands-On Challenges
Build, experiment, and get AI-powered feedback on your code.
AI Documentation Assistant
Build and deploy your Week 1 capstone: an AI-powered documentation assistant that ingests real docs, answers questions with RAG, streams responses, cites sources, and uses tools for navigation. This is your first portfolio-grade AI project.
Acceptance Criteria
- Ingest real documentation files (markdown, text, or PDF) and chunk them intelligently
- Embed all chunks and implement vector similarity search for retrieval
- Generate answers grounded in retrieved context with clickable source citations
- Stream responses in real-time using streamText()
- Add tool-use for doc navigation: search, find section, list documents
- Support conversation memory so follow-up questions work
- Deploy to a public URL (Vercel, Netlify, etc.)
Build Roadmap
0/6Create a new Next.js app and plan the architecture: document ingestion pipeline, embedding storage, retrieval API, and chat UI with streaming.
npx create-next-app@latest ai-docs-assistant --typescript --tailwind --appCreate folders: /lib/rag (chunking, embedding, retrieval), /app/api (routes), /data (docs)Deploy Tip
Push to GitHub and import into Vercel. Pre-load your project's own documentation as sample content. This project is your portfolio piece — write a great README with architecture diagram and live demo link.
Sign in to submit your deployed project.
I can architect a full AI pipeline combining RAG, tools, agents, and streaming into a production-ready application.