Skip to content
Public template

About

Netstead: Python toolkit for GMNS (General Modeling Network Specification) networks — validate, build from OSM/Overture, select in natural language, inspect in the Workbench. Engine: corral (Frictionless on DuckDB).

Resources

Code of conduct

Contributing

Stars

4 stars

Watchers

2 watching

Forks

Repository files navigation

Netstead monorepo

Two Python packages for the General Modeling Network Specification (GMNS), developed under the Zephyr Foundation.

Package What it is PyPI Docs
netstead GMNS toolkit — load, validate, scope, edit GMNS networks netstead e-lo.github.io/netstead/netstead/
corral Generic Frictionless Data Package engine that netstead builds on dbcorral e-lo.github.io/netstead/corral/

Most users only install netstead. corral comes as a transitive dependency.


🧪 v1.0 beta is open

We're shipping the v1.0 rewrite as a public beta. If you can spare half an hour to try it on a real network, your feedback shapes GA.

uv add 'netstead[all]==1.0.0b1'        # or: pip install 'netstead[all]==1.0.0b1'
netstead doctor                        # confirm install

Quick start

import netstead
from netstead.fixtures import leavenworth      # bundled example network

net = netstead.read(leavenworth.csv_dir())     # auto-detect format
report = netstead.validate(net)                # structural + schema + FK + sync
print(f"{net.links.count()} links, {len(report.issues)} validation issues")

report.to_html("report.html")                # interactive single-file HTML

More: the 5-minute quickstart.

Why a monorepo

netstead builds on a generic Frictionless engine (corral) extracted up front. The intent: future spec toolkits (GTFSpy, etc.) reuse the engine instead of reimplementing it. Both packages release independently; CI tests them together.

Netstead/
├── packages/
│   ├── corral/   # generic engine — PyPI package
│   └── netstead/      # GMNS toolkit on top — PyPI package
├── skills/          # Claude Code Skills (installable via path/git URL)
├── docs/            # umbrella landing page only — real docs are per-package
└── .github/         # CI/CD, issue templates, release-drafter

Development

Workspace managed via uv. One command installs both packages with all extras editable:

git clone https://github.com/e-lo/netstead.git
cd Netstead
uv sync --all-packages --all-extras

uv run netstead --help              # CLI
uv run pytest packages -n auto    # fast test tier (full: add -m ""; see CONTRIBUTING.md)

Full contributor workflow: CONTRIBUTING.md.

License

Apache 2.0.

Acknowledgements

About

Netstead: Python toolkit for GMNS (General Modeling Network Specification) networks — validate, build from OSM/Overture, select in natural language, inspect in the Workbench. Engine: corral (Frictionless on DuckDB).

Resources

Code of conduct

Contributing

Stars

4 stars

Watchers

2 watching

Forks

Releases

Packages

Used by

Contributors

Languages