-
Notifications
You must be signed in to change notification settings - Fork 0
Getting Started
This page walks the core loop PolyGraph is built around. If you haven't installed it yet, see Installation.
There are two ways to get code into PolyGraph:
-
Scan a path (default). Paste an absolute folder path into Scan a folder. The analysis sidecar walks that directory on disk, skipping
node_modules, build output,.git, and very large files, into a{ path → source }map. Nothing leaves your machine. -
In-browser picker (fallback). Choose a folder; the browser reads its files into the same map and sends it to the sidecar's
/analyzeendpoint. Handy in the web version when you don't want to type a path.
Large repositories. Above ~3000 files the scan pauses and asks you to confirm before doing the full analysis (a guard against accidentally pointing it at something enormous). Confirm to proceed. See Troubleshooting & FAQ.
Once analysis finishes you get an interactive graph: each file is a card (collapsed by default), with edges for the relationships between files.
This five-step loop is the heart of the product:
- Select a node. Click a card. The detail panel shows its incoming/outgoing edges plus metadata (role, environment, runtime). Expand a file to reveal its members (classes, functions, methods…).
- See its connections. Selecting a card highlights its direct neighbors; the rest dims. Shift-click a second card to highlight the shortest path between the two (or tell you there's no connection).
- Blast radius. Ask what a change to this node would affect — everything transitively downstream, grouped by package / file / kind. See Impact Analysis & Insights.
- Edge evidence. Click an edge to see exactly where the relationship was observed — file · line · column · provider — and the underlying symbol→symbol relationships behind an aggregated file edge. See The Graph Model.
- Open in editor. From a node's detail panel, preview the source inline (syntax-highlighted) and jump to the exact line in VS Code or a JetBrains IDE (desktop only). See Exports, Workspaces & Editor.
- Layouts & Navigation — switch layout engines, filter by kind/language/folder, search, and enter focus mode.
-
Query Language — isolate subgraphs with a small text query (
incoming:>5,role:react-component,depends-on:"database", …). - Abstraction levels — zoom out from files to package and workspace level using the project's manifests. See The Graph Model.
- Export the current graph to DOT, GraphML, Mermaid, JSON, SVG, or a standalone HTML report.
- Save a workspace to capture the current filters, layout, camera, and pins to restore later.
End-users don't need this, but if you're working from source:
bun install
bun run dev # Next.js dev server → http://localhost:3003 · sidecar on a loopback portOpen http://localhost:3003 (needs a WebGPU-capable browser), paste an absolute folder path, and explore. The same kernel powers the architecture-rules CLI — see CLI: Rules & Diff and Development & Building.
PolyGraph — explore, audit, enforce, and compare software architecture across 26 languages, 100% locally. Repository · Releases · Issues · Licensed Apache-2.0 OR MIT
📖 Using PolyGraph
- Installation
- Getting Started
- The Graph Model
- Layouts & Navigation
- Impact Analysis & Insights
- Query Language
- CLI: Rules & Diff
- Exports, Workspaces & Editor
- Troubleshooting & FAQ
🔧 Internals & Contributing