Utilities for navigating flat trees
Go to file
Luke Murphy 255dca336c
Some checks failed
continuous-integration/drone/push Build is failing
Rename CI file
2020-05-16 18:00:05 +02:00
.github Use existing file (doh) 2019-11-20 09:57:26 +07:00
changelog Add change log entry for another small alpha 2019-07-01 18:34:47 +02:00
docs Follow the Hypercore protocol rename 2020-05-16 17:58:44 +02:00
flat_tree Follow the Hypercore protocol rename 2020-05-16 17:58:44 +02:00
test Appease the linter 2019-12-04 22:51:11 +07:00
.drone.yml Rename CI file 2020-05-16 18:00:05 +02:00
.gitignore flat-tree implementation coming down the tubes 2019-07-01 18:09:49 +02:00
.readthedocs.yml Also configure RTD to use new docs path 2019-11-26 10:39:38 +07:00
CHANGELOG.rst Follow the Hypercore protocol rename 2020-05-16 17:58:44 +02:00
CODE_OF_CONDUCT.rst Follow the Hypercore protocol rename 2020-05-16 17:58:44 +02:00
CONTRIBUTING.rst Use better docs theme and clarify docs 2019-11-03 16:15:14 +01:00
LICENSE Follow the Hypercore protocol rename 2020-05-16 17:58:44 +02:00
MANIFEST.in flat-tree implementation coming down the tubes 2019-07-01 18:09:49 +02:00
mypy.ini Follow the Hypercore protocol rename 2020-05-16 17:58:44 +02:00
pyproject.toml Follow the Hypercore protocol rename 2020-05-16 17:58:44 +02:00
README.rst Follow the Hypercore protocol rename 2020-05-16 17:58:44 +02:00
setup.cfg Follow the Hypercore protocol rename 2020-05-16 17:58:44 +02:00
setup.py flat-tree implementation coming down the tubes 2019-07-01 18:09:49 +02:00
tox.ini Follow the Hypercore protocol rename 2020-05-16 17:58:44 +02:00

.. _header:

*********
flat-tree
*********

.. image:: https://img.shields.io/badge/license-GPL-brightgreen.svg
   :target: LICENSE
   :alt: Repository license

.. image:: https://badge.fury.io/py/flat-tree.svg
   :target: https://badge.fury.io/py/flat-tree
   :alt: PyPI Package

.. image:: https://drone.autonomic.zone/api/badges/hyperpy/flat-tree/status.svg
   :target: https://drone.autonomic.zone/hyperpy/flat-tree
   :alt: Drone CI result

.. image:: https://readthedocs.org/projects/flat-tree/badge/?version=latest
   :target: https://flat-tree.readthedocs.io/en/latest/?badge=latest
   :alt: Documentation Status

.. image:: http://img.shields.io/liberapay/patrons/decentral1se.svg?logo=liberapay
   :target: https://liberapay.com/decentral1se
   :alt: Support badge

.. _introduction:

Utilities for navigating flat trees
-----------------------------------

Flat Trees are the core data structure that power Hypercore feeds. They allow
us to deterministically represent a tree structure as a vector. This is
particularly useful because vectors map elegantly to disk and memory.

Because Flat Trees are deterministic and pre-computed, there is no overhead to
using them. In effect this means that Flat Trees are a specific way of indexing
into a vector more than they are their own data structure. This makes them
uniquely efficient and convenient to implement in a wide range of languages.

.. _documentation:

Documentation
*************

* `flat-tree.readthedocs.io`_

.. _flat-tree.readthedocs.io: https://flat-tree.readthedocs.io