--- id: bigtree version: "1.5.3" license: MIT license_treatment: permissive maintenance: active --- # bigtree — Tree Implementation and Methods for Python, integrated with list, dictionary, pandas and polars DataFrame. License: permissive · Maintenance: active · Downloads: 605.1K/mo ## What it is and what it does Bigtree is a Python library for building and manipulating tree and graph structures. It provides three main data models—general trees, binary trees, and directed acyclic graphs—each with a Node class and a wrapper class (Tree, BinaryTree, DAG) that expose high-level APIs. You construct trees from nodes, dictionaries, lists, pandas or polars DataFrames, or interactively; traverse them using pre-order, post-order, level-order, and other strategies; search for nodes by name, path, or custom conditions; and export to console, Jupyter, HTML, images, Mermaid diagrams, or data structures. The library is designed to be pythonic and extensible. It has no runtime dependencies, making installation straightforward. Optional dependencies unlock features like plotting with matplotlib, DataFrame integration, rich terminal output, and a tree query language. The package is actively maintained, supports modern Python versions (3.10–3.13), and includes a terminal-based studio for interactive tree construction and exploration. Use it for: - Build and manipulate organizational hierarchies, file systems, or taxonomies using Node objects and Tree methods. - Convert between tree representations: load from CSV via pandas, export to JSON or Mermaid for documentation. - Search and filter large tree structures by node attributes, paths, or custom predicates. - Visualize tree layouts using the Reingold Tilford algorithm and matplotlib or export to interactive HTML. - Construct and traverse directed acyclic graphs for dependency resolution or workflow modeling. - Clone, prune, or merge subtrees and compare structural differences between two trees. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Bigtree provides tree, binary tree, and directed acyclic graph (DAG) data structures with construction, traversal, search, modification, and export methods, integrated with pandas and polars DataFrames. Yes. Bigtree is worth installing if you need a well-maintained, dependency-free tree or DAG library with broad export and traversal options. Active maintenance, no security vulnerabilities, permissive MIT license, and low install friction make it a solid choice. The optional dependencies are genuinely optional, so you can start minimal. Consider it especially if you work with hierarchical data in pandas or need to visualize tree structures. ## Install pip install bigtree uv add bigtree poetry add bigtree ## Installing bigtree Before you install: Low friction: pure Python wheel with no runtime dependencies. Actively maintained as of 2026-08-06 with recent release on 2026-07-16. Supports Python 3.10–3.13 and PyPy. License in practice: MIT license permits commercial and private use with minimal restrictions; you may use, modify, and distribute bigtree freely provided you include the license notice. Quickstart: pip install bigtree from bigtree import Node, Tree root = Node(name="root") child1 = Node(name="child1", parent=root) child2 = Node(name="child2", parent=root) tree = Tree(root=root) print(tree) Requires Python 3.10 or later. Verify before relying: - Whether optional dependencies (matplotlib, pandas, polars, rich, query) are required for specific workflows or all are truly optional. - Performance characteristics and scalability limits for large trees or DAGs. - Whether the Reingold Tilford algorithm implementation is suitable for production use cases. ## Package facts - License: MIT (permissive) - Python support: supports_current - Install friction: low - Maintenance: active - Downloads: 605.1K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags tree data structure python, binary tree implementation, directed acyclic graph DAG, tree traversal and search, tree export to dataframe, tree visualization plotting, hierarchical data structure, data-structures, graph-algorithms, dataframe-integration [View on SkillFed](https://skillfed.io/packages/bigtree) · [View on PyPI](https://pypi.org/project/bigtree/)