Canonical anatomy domain dataset and Neo4j graph builder.
Project description
anatomy-graphdb
anatomy-graphdb is a Python package for loading, validating, and exporting a structured human anatomy graph from YAML configuration.
It provides:
- canonical anatomy config data under
config/ - typed Python loaders and domain models in
anatomy_graphdb/ - a CLI (
anatomy-graphdb) for validation, catalog export, and Neo4j ingestion - packaged overlay SVG assets (
anatomy_graphdb/assets/)
What You Can Do With It
- Validate cross-references across anatomy entities (muscles, heads, bones, nerves, arteries, actions)
- Load region-scoped or multi-region anatomy models in Python
- Export canonical catalog JSON for downstream systems
- Export Neo4j CSV artifacts or ingest directly via Bolt
- Run a local Neo4j graph build using Docker Compose + Make
Install
pip install anatomy-graphdb
With Neo4j ingestion support:
pip install "anatomy-graphdb[neo4j]"
For development:
poetry install
Quick Start
Python API
from anatomy_graphdb.databases.anatomy.loader import AnatomyLoader
from anatomy_graphdb.domain import build_anatomy_model
loader = AnatomyLoader()
region = loader.load_region("chest")
model = build_anatomy_model(region)
print(model.region)
print(len(model.muscles))
CLI
List regions:
poetry run anatomy-graphdb --list-regions
Validate all regions:
poetry run anatomy-graphdb --region all --validate-only
Export Neo4j CSV artifacts:
poetry run anatomy-graphdb --region all --output data/neo4j --validate
Export canonical catalog JSON:
poetry run anatomy-graphdb --export-catalog --region all --catalog-output data/catalog/anatomy_catalog.json
Direct Bolt ingestion (requires neo4j extra):
poetry run anatomy-graphdb --region all --mode bolt --validate
Docker Neo4j Workflow
One command end-to-end graph refresh into local Neo4j:
make neo4j-refresh-docker REGION=all
Useful helpers:
make neo4j-up
make neo4j-logs
make neo4j-down
Override defaults if needed:
make neo4j-refresh-docker REGION=chest NEO4J_AUTH=neo4j/password HTTP_PORT=7475 BOLT_PORT=7688
Assets
Packaged assets:
- manifest:
anatomy_graphdb/assets/overlay_manifest.json - SVG files:
anatomy_graphdb/assets/anatomy/*.svg
Legacy/reference assets (not packaged):
svgs/svg_front_musclessvgs/svg_rear_musclessvgs/musclessvgs/manifest.json
Development
Run tests:
poetry run pytest
Docs
- API stability:
docs/API_STABILITY.md - Changelog:
CHANGELOG.md - Releasing:
docs/RELEASING.md - Asset attribution:
docs/ASSET_ATTRIBUTION.md
Package Metadata
- Distribution:
anatomy-graphdb - Import namespace:
anatomy_graphdb - Python: 3.12+
- License: MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file anatomy_graphdb-1.0.1.tar.gz.
File metadata
- Download URL: anatomy_graphdb-1.0.1.tar.gz
- Upload date:
- Size: 288.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.2 CPython/3.12.3 Linux/6.17.0-14-generic
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bcb8888204b0f2273d227938c1a8c6e8721036b11238a6d767dee2a69dbc3daa
|
|
| MD5 |
12ee118192e650df073aa1eb76325647
|
|
| BLAKE2b-256 |
e82641277648a02f7ef8fbbaaa5ca77d015463ec832ef89d52cbdfd0a991fa1f
|
File details
Details for the file anatomy_graphdb-1.0.1-py3-none-any.whl.
File metadata
- Download URL: anatomy_graphdb-1.0.1-py3-none-any.whl
- Upload date:
- Size: 373.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.2 CPython/3.12.3 Linux/6.17.0-14-generic
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cbb2e27c5d138dbae4081632044dc87fb66d020d4b2568bc9fd3173390afa695
|
|
| MD5 |
bbcca902a30bc8a0e4610ff6d011e2a7
|
|
| BLAKE2b-256 |
c66930fd5a4af100a66726f6b232da2386c0e274cf97142ad6a91c495a3ba66d
|