Skip to main content

Local-first network config dependency mapper — parse, visualize, and lint vendor configs

Project description

confgraph

Parse network device configs and visualize how everything connects — BGP neighbors, OSPF areas, route-maps, prefix-lists, VRFs — as an interactive dependency graph.

uvx confgraph map router.txt
uvx confgraph map router.txt --lint

![confgraph map output showing protocol dependency graph]

What it does

Point it at a config file. It parses every protocol, builds a dependency graph, and exports an interactive HTML diagram you can open in any browser. --lint flags dangling references and orphaned objects.

Supported platforms

OS Parser
Cisco IOS / IOS-XE IOSParser
Cisco IOS-XR IOSXRParser
Cisco NX-OS NXOSParser
Arista EOS EOSParser

Try it instantly

Pre-generated maps for all supported platforms — open any in your browser, no install needed:

Platform Sample config Interactive map
Cisco IOS samples/ios.txt examples/ios.html
Cisco IOS-XE samples/ios_xe.txt examples/ios_xe.html
Cisco IOS-XR samples/ios_xr.txt examples/ios_xr.html
Cisco NX-OS samples/nxos.txt examples/nxos.html
Arista EOS samples/eos.txt examples/eos.html

Or run against your own config:

uvx confgraph map your-router.txt --output-dir .
open your-router.html

Install

pip install confgraph

Or run without installing:

uvx confgraph map router.txt

Use as a library

from confgraph.parsers.ios_parser import IOSParser

parsed = IOSParser(open("router.txt").read()).parse()
print(parsed.bgp_instances)
print(parsed.ospf_instances)

Protocols parsed

VRF · BGP · OSPF · IS-IS · EIGRP · RIP · Route-maps · Prefix-lists · ACLs · Community lists · AS-path lists · Static routes · NTP · SNMP · Syslog · Banners · QoS · NAT · Crypto/IPsec · BFD · IP SLA · EEM · Object tracking · Multicast

Security & Privacy

Local-first by design. confgraph never sends your config files anywhere. All parsing, graph generation, and analysis run entirely on your machine. The HTML output is a self-contained file with no external requests — no CDN, no analytics, no telemetry of any kind.

Contributing

Contributions welcome — new parsers, bug fixes, additional protocol coverage. See docs/ARCHITECTURE.md to get started.

License

Apache 2.0

64a62af (docs: add README with install, usage, and protocol coverage)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

confgraph-0.1.0.tar.gz (284.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

confgraph-0.1.0-py3-none-any.whl (300.7 kB view details)

Uploaded Python 3

File details

Details for the file confgraph-0.1.0.tar.gz.

File metadata

  • Download URL: confgraph-0.1.0.tar.gz
  • Upload date:
  • Size: 284.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.7.13

File hashes

Hashes for confgraph-0.1.0.tar.gz
Algorithm Hash digest
SHA256 7abaebd9ebf9e6fccfa944f94086819bb9f6ded083490c508f7cece9044fe2fe
MD5 48ab31801a89b795241b2aee79809023
BLAKE2b-256 1af39b2faaf7964114a5665eb04bc0857d194c70c40d3675e7aa75319ac78c43

See more details on using hashes here.

File details

Details for the file confgraph-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: confgraph-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 300.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.7.13

File hashes

Hashes for confgraph-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 dd9b940a4cd4094164a3351bafa0232884049fb5d66d097879cc98b53311c199
MD5 c91c15360b8975eb3e71d37c2b1a1096
BLAKE2b-256 09cacf731455f5bd3f93ba5470e74add66fd1194995e3d976de34599c103cf8a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page