mattpocock/graph-docs-cli — explained in plain English
Analysis updated 2026-07-11 · repo last pushed 2022-04-16
Structure a software project's documentation so readers follow the correct learning path.
Build a technical course with modules that visually show prerequisite relationships.
Organize onboarding guides so new hires know what to read first.
Untangle existing docs that mix beginner and advanced concepts without a clear order.
| mattpocock/graph-docs-cli | joeseesun/qiaomu-artist-style | pfwjrfp5hh-byte/workmesh | |
|---|---|---|---|
| Stars | 108 | 112 | 104 |
| Language | TypeScript | TypeScript | TypeScript |
| Last pushed | 2022-04-16 | — | — |
| Maintenance | Dormant | — | — |
| Setup difficulty | easy | easy | hard |
| Complexity | 2/5 | 2/5 | 3/5 |
| Audience | developer | designer | pm founder |
Figures from each repo's GitHub metadata at analysis time.
No notable setup gotchas mentioned, it is a CLI tool that reads Markdown files and opens a browser graph.
Graph Docs CLI helps you organize documentation so readers can actually follow along. Instead of writing long pages and hoping people read them in the right order, you break your docs into small, focused modules and declare what each module depends on. The tool then generates a visual graph showing the ideal learning path, what someone needs to understand before tackling any given topic. The workflow is straightforward. You write individual Markdown files for each concept. At the top of each file, you list that module's dependencies, the other modules a reader should understand first. The tool reads these relationships and draws an interactive graph you can view in your browser, updating live as you edit. You can also group modules with color-coded categories like "basics" or "advanced" to keep larger doc sets manageable. This is built for anyone maintaining documentation that people learn from, software projects, technical courses, onboarding guides. The creator, Matt Pocock, developed it while restructuring XState's docs after realizing their pages mixed advanced and beginner concepts with no clear reading order. If you've ever documented something like JavaScript arrow functions and struggled to figure out whether to explain variables or regular functions first, this tool turns that decision into explicit, visible dependencies. One notable design choice: circular dependencies are explicitly forbidden. If module A requires understanding module B, and B requires understanding A, the tool throws an error rather than allowing it. This forces you to resolve the issue, either by splitting out the shared concept into its own module or combining the two into one page. The README notes this is what separates the project from note-taking tools like Obsidian, which allow circular links. Those tools work well for personal notes but can create confusing experiences for other readers who don't share the author's mental model. The project is experimental, with the creator actively seeking feedback. It doesn't yet integrate directly with documentation platforms, though that's on the roadmap.
A command-line tool that turns Markdown documentation files into an interactive visual graph showing the ideal reading order, based on dependencies you declare at the top of each file.
Mainly TypeScript. The stack also includes TypeScript, Markdown, CLI.
Dormant — no commits in 2+ years (last push 2022-04-16).
The explanation does not mention a license, so it is unknown what permissions are granted for use or distribution.
Setup difficulty is rated easy, with roughly 5min to a first successful run.
Mainly developer.
This repo across BitVibe Labs
Verify against the repo before relying on details.