Skip to main content

A Django module for managing hierarchical data models through a node tree, with kinship relationship queries and optional database-native optimisations.

Project description

Clade

A Django module for managing hierarchical data models through a tree of nodes, with kinship relationship queries and optional database-native optimisations.

pipeline status coverage PyPI License


Status

Pre-developmentv0.0.5 in progress. Not yet usable.

See the milestones and open issues on GitLab for the full roadmap.


What it does

Clade provides a Django application for modelling and querying tree-structured data. It exposes the full set of kinship relationships derivable from a node tree — not only parent/child pairs, but ancestors, descendants, siblings, and collateral lines (piblings, niblings, cousins…) — using gender-neutral terminology throughout.

It also introduces Affinity: a lateral relationship between nodes that share attribute values without any hierarchical link between them.

The module targets multiple database backends:

  • PostgreSQL with ltree — native optimisation (primary target)
  • SQLite / other — pure-Django fallback

Install

Not yet published. Instructions will be added at v0.1.0.

pip install clade          # future
# settings.py
INSTALLED_APPS = [
    ...
    "clade",
]

Requirements

  • Python 3.10+
  • Django 5.2+

Contributing

See CONTRIBUTING.md and CODE_OF_CONDUCT.md.


Licence

Apache License 2.0 — see LICENSE.txt and NOTICE.

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

django_clade-0.0.5.tar.gz (55.6 kB view details)

Uploaded Source

Built Distribution

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

django_clade-0.0.5-py3-none-any.whl (10.1 kB view details)

Uploaded Python 3

File details

Details for the file django_clade-0.0.5.tar.gz.

File metadata

  • Download URL: django_clade-0.0.5.tar.gz
  • Upload date:
  • Size: 55.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.3 {"installer":{"name":"uv","version":"0.11.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"22.04","id":"jammy","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for django_clade-0.0.5.tar.gz
Algorithm Hash digest
SHA256 09e6b88cb935b5b48541f68268e3712dd1f1fa398eba37af696818cac8a6dc0a
MD5 b8240c179f709dca5ffcb1243f67d40d
BLAKE2b-256 20200e15ac7484a9b45078b043baaf3532acda02836fdaed644b41436706d0ec

See more details on using hashes here.

File details

Details for the file django_clade-0.0.5-py3-none-any.whl.

File metadata

  • Download URL: django_clade-0.0.5-py3-none-any.whl
  • Upload date:
  • Size: 10.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.3 {"installer":{"name":"uv","version":"0.11.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"22.04","id":"jammy","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for django_clade-0.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 e10c114a6a803fee513a5734a9dbfb7e99f5883cf962bae896f26aada38edf05
MD5 6bd27da0c9da79607adef6c65374979d
BLAKE2b-256 0e5d96c946a32d440896ea7bc92194169cb62a749a3763c984e345de65c0a3c9

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