Repo Doctor is a developer-focused, monorepo-ready onboarding tool that turns unfamiliar or massive codebases into actionable developer playbooks in minutes.
When entering a new codebase, developers face intense cognitive overload:
- "Where do I start reading?" β Manifest files and root folders don't tell you the boot path or order of execution.
- "What is fragile?" β Static analysis tools flood you with thousands of styling lints instead of highlighting high-risk, volatile files.
- "What will break if I change this?" β Code complexity graphs are hard to read and don't clarify the transitive impact radius of a single edit.
- "How does the architecture work?" β Codebases rarely document request and data flows from entry boundaries to database layers.
Repo Doctor solves this by analyzing repositories deterministically, structuring domain maps, and generating clear, senior engineer-level guides.
Most codebase visualizers generate massive, complex, force-directed node graphs. While visually satisfying, they are functionally useless for day-to-day work: they overwhelm you with lines, lack context, and fail to guide your first commit.
Repo Doctor is built on the Action-First Principle:
- Prioritize Decisions: The landing dashboard answers exactly what to read now and what to fix now.
- Context-Driven Slide-outs: Dependency maps exist, but they are presented inside context-focused slide-outs showing direct callers, transitive impact radii, and risk calculations.
- Structured Flow Narratives: Instead of interactive node clouds, it presents a step-by-step sequential path mapping how requests flow from controllers through service domains to storage.
First-time users are greeted by an automated, step-by-step tour explaining the ingestion inputs, visual trees, actions panel, and senior engineer modes. Tour progress is persisted in local storage.
Located near the top for immediate visibility, this panel maps the directory structure, architectural responsibilities, and dependency paths:
- Repository Directory: Recursive collapsible folders highlighting entry points (stars), package manifests (badges), and risk markers.
- Domain Modules: Files grouped by architectural area showing file counts, entry indicators, and tech debt risks.
- Dependency Paths: Collapsible imports and dependents lists with click-to-audit actions.
Tip
Click any file node inside the visualizer trees to trigger a focus glow highlight and instantly slide open the Impact Analysis drawer for that file.
No more searching for entry points. Repo Doctor calculates a repository Technical Debt Score and generates targeted checklists:
- Read-First Actions: Recommended order of file reading to understand setup and boot sequences.
- Fix-First Actions: Volatile, high-risk modules containing high technical debt that need refactoring first.
Clicking any file in the trees or dashboard slides open the Impact Analysis Panel. It provides:
- Direct callers and co-changed file networks.
- Calculated transitive impact radius and likely breakage risk score.
- Nearby unit tests and an AI-synthesized explanation of change implications.
The Architecture tab displays a synthesised report mapping the entire codebase:
- High-level domain module groupings.
- Structured request-data flow steps from HTTP controllers down to the database layers.
- "Boilerplate files to ignore" (e.g. build configs, logging scripts, environment loaders) so you can focus on core logic.
Repo Doctor handles indexing pipelines robustly:
- If Redis goes offline, it automatically falls back to memory maps.
- If AI API keys are missing, it falls back to high-fidelity deterministic templates.
- Built-in Octokit retries and rate-limit backoffs for large repositories.
Repo Doctor ships with three fully pre-analyzed demo repositories in the web client, allowing you to explore the dashboard immediately without any database or API key setup:
- Payments Platform (TypeScript): A Node/Express payment gateway monorepo.
- Actix Ledger (Rust): A performance-critical double-entry accounting ledger.
- FastAPI ML Inference (Python): An ML pipeline exposing endpoints for prediction modeling.
- Open the dashboard at
http://localhost:5173. - Select any demo shortcut under the ingestion input (e.g., Actix Ledger (Rust)).
- Browse the directory tree, click files to see dependency impacts, or switch to the Architecture tab to trace request flows.
Repo Doctor is organized as a TypeScript monorepo using npm workspaces:
βββ apps/
β βββ api/ # Express backend, Prisma schema, git indexing & analyzer engines
β βββ web/ # React + Vite frontend dashboard (dark-mode-first developer SaaS)
βββ packages/
β βββ shared/ # Shared TypeScript contracts, interfaces, and type definitions
βββ scripts/ # Ingestion utility scripts (environment setup and checks)
βββ docs/ # Technical architecture notes, API specs, and visual screenshots
βββ assets/
βββ screenshots/ # Polished screenshots referenced in the README
Copy the example environment file into the API workspace:
cp apps/api/.env.example apps/api/.envEnsure your .env contains the required keys:
PORT=4000
DATABASE_URL="postgresql://postgres:postgres@localhost:5432/repodoctor?schema=public"
REDIS_URL="redis://localhost:6379"
# (Optional) GitHub API credentials for scanning public/private repos without strict rate limits
GITHUB_TOKEN="your_github_personal_access_token"
# (Optional) AI Summarization Keys
GEMINI_API_KEY="your_google_gemini_api_key"
OPENAI_API_KEY="your_openai_api_key"Note
If DATABASE_URL is omitted, Repo Doctor will run in Demo-Only mode. Scanning new repositories is disabled, but all built-in sample repos and visual trees are fully interactive.
Run the following commands from the root directory:
# Start local PostgreSQL and Redis databases
docker compose up -d
# Install workspace dependencies
npm install
# Generate the Prisma client & run migrations
npm run db:generate
npm run db:migrate
# Run unit and integration tests
npm test
# Boot the API server and Web client simultaneously
npm run dev- Frontend Dashboard:
http://localhost:5173 - API Server:
http://localhost:4000 - API Health Check:
http://localhost:4000/health
You can launch a fully orchestrated, production-grade instance of Repo Doctor (complete with databases, caching layers, static asset servers, and the Express API) in seconds.
Run the following command at the root:
docker compose -f docker-compose.prod.yml up -d --build- Production Web App (Nginx):
http://localhost(Port 80) - Production API Server:
http://localhost:4000
- Welcome: Navigate to
http://localhost(orhttp://localhost:5173in dev). Review the Guided Onboarding Tour dialog that welcomes you to the application. - Demo Shortcuts: Click the Actix Ledger (Rust) shortcut. Watch the dashboard metrics update instantly: Debt Score, Fragile Modules count, and the detected Rust/Actix-web tech stacks are displayed immediately.
- Trace Trees: Look at the Interactive Codebase Maps tab. Expand the folders, note the star icon marking the bootstrap entry points, and click
src/ledger/mod.rs. - Audit Impacts: Observe the Impact Analysis panel slide out from the right, displaying the file's coupling strength, transitive impact radius, and technical debt risk.
- Domain Flow: Switch to the Architecture tab at the top left. Review the domain cards and sequential request-data flow steps mapped by a Senior Engineer.
- Workspace Access: In the top Auth Panel, enter your email and password, then click Continue (Register/Login).
- Ingest Repository: Paste a public GitHub URL (e.g.,
https://github.com/expressjs/express) into the input box and click Analyze. - Pipeline Progress: Watch the Pipeline Stepper cycle through Queuing Job, Fetching Codebase, Modeling Dependencies, Calculating Tech Debt, and Synthesizing Summary.
- Explore Maps: Cycle through the visual tabs:
- Explore folders in Repository Directory.
- Inspect domain boundaries in Domain Modules.
- Walk through incoming imports and outgoing callers in Dependency Paths.
- Change Risk Audit: Select a file you plan to modify. Open the Impact Analysis panel to check:
- Transitively coupled files.
- Total breakage risk rating.
- Location of nearby unit tests to run after making changes.
- Architecture Audit: Review the Senior Engineer mode summaries to discover which boilerplate folders (e.g.
tests/,scripts/, node configuration files) you can safely ignore during your initial onboarding week.
Refer to CHANGELOG.md for full version release logs.









