Documentation
Documentation
Codegraph extracts a dependency model from sources alone, with no build, and lets you query it, walk it as a 3D city, browse every dependency to its source line, replay its history, and have it explained bottom-up. The landing page says why; these pages say how.
The documentation is in four parts, each for a different moment:
Learn by doing: your first city, reading it, the navigator, history replay, explanations, SQL.
Solve one problem: CI gates, facts-only views, complexity cities, Spring roles, temporal stores, extractor authoring.
Look it up: every command and option, the interchange format, the metamodel, artifacts, the SQLite store.
Understand why: traits, provenance, extraction without compiling, identity, the city as a model, prior art.
Sixty-second start
Node 22+, pnpm and a JDK 17+ on PATH. Codegraph runs from a clone today.
git clone https://gitlab.com/jgrodziski/codegraph.git && cd codegraph
pnpm install && pnpm -r build
(cd extractors/java && ./mvnw -B package)
java -jar extractors/java/target/codegraph-java.jar --src ~/src/gson/gson/src/main/java --out gson.jsonl
./bin/codegraph validate gson.jsonl
./bin/codegraph city gson.jsonl --serve --host 127.0.0.1 # http://localhost:4177The first tutorial walks through every step.
Limitations, up front
- Two languages today: Java and C#. Nine language profiles exist on paper; the shipped extractors are Spoon for Java (needs a JDK 17+) and Roslyn for C# (needs the .NET 10 SDK to build; the binary it produces needs nothing). A Clojure adapter is next.
- No build means imperfect resolution. Without a classpath some references stay unresolved; they become stubs, honest but still gaps. Keep one package to one source root per run.
explaincosts money and needs a network. It is the only command that does;--dry-runand--estimatecome first.- Not a linter. Codegraph reports structure, coupling and cycles, not style or bugs.
- Runs from a clone. No npm package or binary release yet.
Source: gitlab.com/jgrodziski/codegraph. License: not yet chosen; until a LICENSE file lands, all rights reserved.
Last updated on