Model Explorer
Model Explorer turns a folder of Markdown files into an interactive Entity-Relationship graph — directly inside VS Code.
Your Markdown files are the source of truth. The graph is a derived visualization, always in sync with your documentation.
Features
Interactive ER Graph
Open the graph with the command Model Explorer: Open Graph from the Command Palette (Ctrl+Shift+P / Cmd+Shift+P).
- One node per concept — each
.md file with a name property becomes a node
- Color-coded by scope — nodes sharing the same
functional_scope share a color
- Force-directed layout — nodes spread automatically; drag them to reposition
- Live filter — filter nodes by functional scope using the chip bar at the top
- Auto-refresh — the graph updates automatically when any
.md file is saved
Detail Panel
Click any node to open its detail panel:
- Full rendered content of the
.md file
- Links to related concepts (
[[ConceptName]]) are clickable
- Incoming relations section lists all concepts that reference this one, with clickable source names to navigate between concepts
Missing Targets
If a relation references a concept that has no matching file, the target node is still shown — with a dashed border to indicate it is undeclared.
New Concept
Use Model Explorer: New Concept to create a new concept file from a template. You will be prompted for a name and an optional functional scope.
Each .md file represents one concept. The only required field is name.
---
name: Order
functional_scope: Order Management
---
## Description
Represents a purchase request validated by a customer.
## Relations
- placed by : 0..* -> 1 [[Customer]]
- contains : 1 -> 1..* [[OrderLine]]
- associated with : 1 -- 1 [[Payment]]
## Business Rules
- An order cannot be modified after validation.
Frontmatter
| Field |
Required |
Description |
name |
✅ |
Display name of the concept (used as the node label) |
functional_scope |
❌ |
Group the concept belongs to — used for node coloring |
Files without a name field are silently ignored by the parser.
Relations
Each relation line follows this format:
- {label} : {source_cardinality} {arrow} {target_cardinality} [[{target_name}]]
Arrow types:
| Syntax |
Rendering |
-> |
Directed — arrowhead toward target |
-- |
Undirected — plain line |
Cardinality examples: 1, 0..1, 0..*, 1..*
Each relation is declared in exactly one file. Incoming relations (backlinks) are computed automatically and displayed in the detail panel.
Additional Sections
Any section not listed above (## Description, ## Relations) is preserved and rendered in the detail panel, but ignored by the graph.
Commands
| Command |
Description |
Model Explorer: Open Graph |
Open or focus the ER graph panel |
Model Explorer: New Concept |
Create a new concept file from a template |
Requirements
- VS Code
^1.85.0
- A workspace folder containing
.md concept files
License
MIT — see LICENSE