Skip to main content

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_muscles
  • svgs/svg_rear_muscles
  • svgs/muscles
  • svgs/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


Download files

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

Source Distribution

anatomy_graphdb-1.0.1.tar.gz (288.3 kB view details)

Uploaded Source

Built Distribution

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

anatomy_graphdb-1.0.1-py3-none-any.whl (373.4 kB view details)

Uploaded Python 3

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

Hashes for anatomy_graphdb-1.0.1.tar.gz
Algorithm Hash digest
SHA256 bcb8888204b0f2273d227938c1a8c6e8721036b11238a6d767dee2a69dbc3daa
MD5 12ee118192e650df073aa1eb76325647
BLAKE2b-256 e82641277648a02f7ef8fbbaaa5ca77d015463ec832ef89d52cbdfd0a991fa1f

See more details on using hashes here.

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

Hashes for anatomy_graphdb-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 cbb2e27c5d138dbae4081632044dc87fb66d020d4b2568bc9fd3173390afa695
MD5 bbcca902a30bc8a0e4610ff6d011e2a7
BLAKE2b-256 c66930fd5a4af100a66726f6b232da2386c0e274cf97142ad6a91c495a3ba66d

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