A standalone Next.js 16 application for exploring and learning from arbitrary software source code with an interactive, VS Code-like interface. Perfect for studying the Linux kernel, Python CPython, glibc, LLVM, and any GitHub repository.
π Live Site: explorar.dev π GitHub: pkill37/explorar.dev
Explore these popular repositories instantly:
| Repository | Description | Live Demo |
|---|---|---|
| π§ Linux Kernel | Core operating system kernel | explorar.dev/torvalds/linux |
| π CPython | Python interpreter implementation | explorar.dev/python/cpython |
| π§ LLVM | Compiler infrastructure project | explorar.dev/llvm/llvm-project |
| π glibc | GNU C Library implementation | explorar.dev/bminor/glibc |
π‘ Tip: Curated repositories are pre-downloaded at build time β exploration is instant with no API calls needed!
- π Interactive File Browser: Navigate any software source tree with VS Code-like interface
- π» Monaco Code Editor: Full-featured editor with syntax highlighting for 100+ languages
- π Guided Learning: Chapter-based learning paths for curated repositories
- ποΈ Data Structures View: Browse and explore kernel data structures and APIs
- β‘ Static & Fast: Curated repos are pre-built; no server needed
- πΎ Local Storage: IndexedDB-based persistent storage with offline access
- π― Zero Setup: No installation required β works entirely in your browser
Simply visit explorar.dev and click any of the pre-configured repositories (Linux, Python, LLVM, glibc).
npm install
npm run devOpens at http://localhost:3000. The predev script automatically downloads the CPython repository for local testing.
See DEVELOPMENT.md for complete development instructions.
explorar.dev/
βββ src/ # Frontend (Next.js)
β βββ app/
β β βββ [owner]/[repo]/ # Dynamic repository routes
β β βββ layout.tsx # Root layout with metadata
β β βββ page.tsx # Home page
β βββ components/
β β βββ KernelExplorer.tsx # Main repository explorer
β β βββ FileTree.tsx # File tree navigation
β β βββ CodeEditorContainer.tsx # Editor with tabs
β β βββ MonacoCodeEditor.tsx # Monaco editor wrapper
β β βββ GuidePanel.tsx # Learning guides
β β βββ ... # Other UI components
β βββ contexts/
β β βββ RepositoryContext.tsx # Repository state management
β βββ lib/
β β βββ repo-storage.ts # IndexedDB storage
β β βββ github-archive.ts # Repository downloading
β β βββ github-api.ts # GitHub API integration
β β βββ repo-static.ts # Static file serving
β β βββ ... # Other utilities
β βββ types/
β βββ index.ts # TypeScript type definitions
βββ docs/ # Markdown guides for curated repos
βββ public/
β βββ repos/ # Pre-downloaded curated repos (build artifact)
βββ scripts/
βββ download-repos.ts # Build-time repo downloader
- Next.js 16: React framework with App Router (static export)
- React 19: Latest React with concurrent features
- Monaco Editor: VS Code editor component
- TypeScript: Full type safety
- IndexedDB: Browser database for persistent storage
- JSZip: Client-side zip file handling
Pre-downloaded at build time via scripts/download-repos.ts. Files are served from /public/repos/ β no API calls required, full offline support.
User-entered GitHub repositories are downloaded on-demand into IndexedDB. Files are lazy-loaded when opened. Requires GitHub API access (60 req/hr unauthenticated).
- DEVELOPMENT.md - Complete development guide
- CLAUDE.md - Architecture and codebase guide for Claude Code
Contributions and feedback are welcome!
Private project.
- π Website: explorar.dev
- π GitHub: github.com/pkill37/explorar.dev
- π¬ Discord: discord.gg/fuXYz44tSs
- π± Telegram: t.me/explorardev
- π§ BrainSpeed.ai: AI-powered development tools
- π Reverser.dev: Reverse engineering platform