gitplex

See how a codebase thinks.

Paste a public GitHub repository and walk its real wiring: what depends on what, what breaks if you change it, and the path between any two pieces of code.

Try
  • No API key
  • Deterministic analysis
  • Public repos only

02 · Blast radius

What breaks if I change this?

Scroll, and watch a change to config.py travel outward through everything that calls it, imports it, or inherits from it, one hop at a time.

[ fig. 02 ]blast radius · fastapi/full-stack-fastapi-template · config.pyLIVE
hop 0 / 20 dependents reached
[ fig. 03 ]shortest path · sdk.gen.ts → useCustomToast()LIVE
hops 0 / 6

03 · Find path

How does this file reach that function?

Pick any two things: files, functions, classes or routes, in any mix. gitplex finds the shortest chain of real imports, calls and definitions between them, and names every link. Copy the result as Markdown for a PR or your agent.

  1. 0sdk.gen.ts
  2. 1── IMPORTS ─▶client.gen.ts
  3. 2◀─ IMPORTS ──main.tsx
  4. 3── IMPORTS ─▶routeTree.gen.ts
  5. 4── IMPORTS ─▶reset-password.tsx
  6. 5── DEFINES ─▶ResetPassword()
  7. 6── CALLS ─▶useCustomToast()
[ fig. 04 ]export · backend/app/ → fastapi-full-stack-fastapi-template-backend-app-map.mdLIVE
# fastapi/full-stack-fastapi-template - repository map
> Generated by gitplex from commit `cb740b656d7a` · scope: `backend/app/`
> Source: https://github.com/fastapi/full-stack-fastapi-template
25 files in scope · 64 functions · 22 classes · languages: python
## How to read this
Every relationship below was parsed from the syntax tree, not inferred - `Imports` and `Imported by` are resolved module references, so they can be trusted when deciding what a change will affect. Files are ordered by how central they are to the repository, not alphabetically.
…
## Files
### `backend/app/models.py`
133 lines · imported by 16 files · entry point
**Defines**
- `def get_datetime_utc` (L9–L10)
- `class UserBase` (L14–L18)
- `class UserCreate` (L22–L23)
- `class UserRegister` (L26–L29)
- `class UserUpdate` (L33–L38)
- `class UserUpdateMe` (L41–L43)
- `class UpdatePassword` (L46–L48)
- `class User` (L52–L59)
- `class UserPublic` (L63–L65)
- `class UsersPublic` (L68–L70)
- `class ItemBase` (L74–L76)
- `class ItemCreate` (L80–L81)
- `class ItemUpdate` (L85–L87)
- `class Item` (L91–L100)
- `class ItemPublic` (L104–L107)
- `class ItemsPublic` (L110–L112)
- `class Message` (L116–L117)
- `class Token` (L121–L123)
- `class TokenPayload` (L127–L128)
- `class NewPassword` (L131–L133)
**Imported by**
- `backend/app/alembic/env.py`
- `backend/app/api/deps.py`
- `backend/app/api/routes/items.py`
25 files479 lines≈ 2,871 tokens

04 · For your agent

Brief your agent in one file.

Export the whole repository, or one folder, as a single Markdown file: the file tree, what every file defines, and what depends on what. Your agent reads it once and starts with the architecture, instead of rediscovering it one file at a time.

Paste it into Claude, Cursor or Copilot, or commit it as CODEBASE.md so every session starts from the same map. Blast radius and path results copy out the same way.

  • Scope it to one folder from the file tree
  • Keep or drop functions, classes and imports
  • Preview it, then copy or download

06 · Deterministic

Parsed, not guessed.

Every edge comes from a syntax tree: tree-sitter parses the code, extractors resolve what they can prove and drop what they can't. Each relationship carries its evidence and a confidence score.

Python, JavaScript, TypeScript, Go and Java get the whole picture: functions, classes, calls and inheritance. 27 more languages are mapped as files and the imports between them. No model in the loop, so the same commit always gives the same map.

  • Python
  • TypeScript
  • JavaScript
  • Go
  • Java
  • Rust
  • Kotlin
  • Swift
  • C
  • C++
  • C#
  • Ruby
  • PHP
  • Scala
  • Dart
  • Elixir
  • Erlang
  • Haskell
  • OCaml
  • Clojure
  • Julia
  • Lua
  • Perl
  • R
  • Bash
  • PowerShell
  • Groovy
  • Obj-C
  • Fortran
  • Solidity
  • Zig
  • Vim script

functions, classes and callsunmarked: files and imports

languages with full symbol graphs
5
languages with full symbol graphs
more mapped as files and imports
27
more mapped as files and imports
language models involved
0
language models involved

Your turn

Point it at the codebase you're afraid to touch.

© 2026 gitplex · built by @yadavdevv
Sourcetree-sitter · FalkorDB · WebGL