An interactive web-based explorer for understanding the Claude Code codebase. Search tools, commands, files, and learn how Claude Code works internally through visual diagrams and educational learning paths.
- π Full-Text Search - Search across 1,900+ files, functions, tools, and commands
- π¨ Tools Catalog - Browse all 40+ tools with descriptions, permissions, and safety features
- β Commands Registry - Explore 50+ slash commands with usage examples
- π Files Browser - Tree view of the entire
src/directory with metadata - π Execution Flow - Visual guide to how queries are processed
- ποΈ Architecture - Understand the service layer and system design
- π Learning Paths - Guided tours for different learning objectives
- β Favorites - Bookmark tools and files for quick access
- Frontend: React 18 + TypeScript + Tailwind CSS
- Search: Lunr.js (full-text search in browser)
- Build: Vite
- No Backend: Pure static files, zero server needed
- Node.js 18+ (or Bun 1.0+)
- npm or bun package manager
# Clone and enter the directory
cd claude-code-explorer
# Install dependencies
npm install
# or with bun:
bun installGenerate searchable metadata from the Claude Code codebase:
npm run indexThis scans the source code at:
c:/Users/manju/.gemini/antigravity/scratch/claude-code/src
And generates:
public/data/file-index.json- All files + metadatapublic/data/tools-index.json- Tool catalogpublic/data/commands-index.json- Command registry
Start the dev server with hot reload:
npm run devOpen http://localhost:3000 in your browser.
npm run buildThis runs indexing + Vite build and outputs to dist/
Deploy the static files to any host:
npm run build
# Push dist/ to gh-pages branch
npx gh-pages -d distnpm run build
# Deploy dist/ folder
vercel --prodnpm run build
aws s3 sync dist/ s3://your-bucket/claude-code-explorer/
βββ public/
β βββ data/ (generated files)
β βββ file-index.json
β βββ tools-index.json
β βββ commands-index.json
βββ src/
β βββ main.tsx
β βββ App.tsx
β βββ components/
β β βββ SearchBox.tsx
β β βββ Sidebar.tsx
β β βββ CodeSnippet.tsx
β β βββ ToolCard.tsx
β βββ pages/
β β βββ SearchPage.tsx
β β βββ ToolsPage.tsx
β β βββ CommandsPage.tsx
β β βββ FilesPage.tsx
β β βββ ExecutionFlowPage.tsx
β β βββ ArchitecturePage.tsx
β β βββ Learning.tsx
β βββ hooks/
β β βββ useIndexData.ts
β β βββ useSearch.ts
β β βββ useFavorites.ts
β βββ types/
β β βββ index.ts
β βββ styles/
β βββ globals.css
βββ scripts/
β βββ index-codebase.ts
β βββ extract-tools.ts
β βββ extract-commands.ts
β βββ generate-index.ts
βββ index.html
βββ vite.config.ts
βββ tailwind.config.ts
βββ tsconfig.json
βββ package.json
- Indexing Scripts scan the source code
- Extract metadata (classes, functions, exports, imports)
- Generate JSON index files
- Vite bundles React app with embedded indices
- All data is compiled into the app at build time
- Browser loads HTML + JS bundle
- Lunr.js index loads into memory
- Search is instant, fully offline
- No API calls needed
- Search by file name, function name, tool name, or command
- Results show type, description, and source file
- Click to navigate to relevant page
- Grid/list of all 40+ tools
- Filter by category or search
- View permissions, inputs, and safety features
- Link to GitHub source
- Table of all 50+ slash commands
- Search and filter by category
- Usage examples and aliases
- Link to implementations
- Tree view of
src/directory - Click files to view:
- Line count and category
- Exported classes and functions
- Import list
- Related metadata
- Step-by-step breakdown of query processing
- Links to relevant source files
- Code snippets with syntax highlighting
- Deep dive into each stage
- System overview diagram
- Service layer explanations
- Key file locations
- Important concepts
- 5 guided learning paths
- Covers:
- Query processing flow
- Tool system design
- Permission model
- Command system
- Architecture overview
- Each path: 5-15 min duration
Edit scripts/index-codebase.ts:
const CLAUDE_CODE_SRC = 'path/to/your/codebase/src'Edit src/pages/Learning.tsx and add to the paths array.
Edit src/styles/globals.css and tailwind.config.ts.
- Load time: < 2 seconds
- Search results: < 500ms
- Fully offli
- Works on older browsers (ES2020+)
This project is built to explore and understand the Claude Code codebase for educational purposes.