asciitree
Draws ASCII trees.
Decision gist · record as of 2026-08-14
No, unless you are maintaining legacy code already using it. The package is dormant (last release 2016-09-05), has no specified Python version support, and high install friction. For new projects, consider actively maintained alternatives. The permissive MIT license poses no legal barrier, but the maintenance gap and age make it a poor choice for new development.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Python version support is unspecified; compatibility with modern Python versions is not guaranteed.
- High install friction: the package is dormant (last release 2016-09-05) with no specified Python version support.
- No runtime dependencies, but age and lack of maintenance signal warrant caution for new projects.
License · maintenance · safety
MIT (permissive) — MIT license is permissive and imposes minimal restrictions; you may use, modify, and distribute the package freely with attribution.
last release 2016-09-05 (3630 days) · last repo commit 2024-02-02 · 90 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 976,487 downloads/mo, #4,593 on PyPI
Alternatives
Verify before relying
from asciitree import LeftAligned
from collections import OrderedDict as OD
tree = {'root': OD([('child', {})])}
tr = LeftAligned()
print(tr(tree))- Whether the package works reliably on current Python versions, given no specified version support and dormant status since 2016.
- Whether the package handles edge cases (very deep trees, unicode characters, wide terminal widths) as expected.
- Current usability on Python versions released after the last 2016-09-05 release.
What it is and what it does
asciitree is a small utility that converts nested dictionary structures into ASCII tree diagrams suitable for printing in a terminal. It takes a dict-based representation of a tree (where keys are node labels and values are child dicts) and renders it using box-drawing characters and indentation.
The package provides a simple interface: instantiate a layout class like LeftAligned, then call it with your tree dict to get a formatted string. It has no runtime dependencies and is straightforward to integrate into scripts or CLI tools that need to display hierarchical data. However, the project has been dormant since 2016-09-05 with no specified Python version support, making it a legacy tool best suited for maintenance of existing code rather than new projects.
Use it for
- Display directory or file hierarchies in a CLI tool without external dependencies.
- Render organizational charts or decision trees in terminal-based applications.
- Debug nested data structures by visualizing their tree form during development.
- Generate ASCII tree output for documentation or log files from programmatic data.
- Build simple terminal UIs that show hierarchical relationships in a human-readable format.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
No, unless you are maintaining legacy code already using it.
The package is dormant (last release 2016-09-05), has no specified Python version support, and high install friction. For new projects, consider actively maintained alternatives. The permissive MIT license poses no legal barrier, but the maintenance gap and age make it a poor choice for new development.
Install
asciitree on PyPI
Before you install
High install friction: the package is dormant (last release 2016-09-05) with no specified Python version support. No runtime dependencies, but age and lack of maintenance signal warrant caution for new projects.
Python version support is unspecified; compatibility with modern Python versions is not guaranteed.
License in practice
MIT license is permissive and imposes minimal restrictions; you may use, modify, and distribute the package freely with attribution.
Quickstart
from asciitree import LeftAligned
from collections import OrderedDict as OD
tree = {'root': OD([('child', {})])}
tr = LeftAligned()
print(tr(tree))
Verify before relying
- Whether the package works reliably on current Python versions, given no specified version support and dormant status since 2016.
- Whether the package handles edge cases (very deep trees, unicode characters, wide terminal widths) as expected.
- Current usability on Python versions released after the last 2016-09-05 release.
Package facts
| License | MIT permissive |
| Python support | Not specified |
| Install friction | High. Source build required |
| Runtime dependencies | None |
| Maintenance | Dormant 3,630 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 976,487 / month, #4,593 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
Evidence: asciitree-0.3.3.tar.gz
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “ascii tree visualization”
- asciitreeRenders tree data structures as formatted ASCII art for display in…
- seedirGenerates ASCII tree diagrams of folder structures with customizable…
- anytreeProvides a lightweight Python library for creating, manipulating, and…
Give your agent the search over MCP, or paste the wish link into any chat.
More Terminals packages
Wraps any iterable to display a real-time progress bar in the terminal or Jupyter notebook, showing iteration count, elapsed time, and estimated time remaining.
Rich renders styled text, tables, progress bars, syntax highlighting, markdown, and tracebacks to the terminal with minimal code.
Colorama makes ANSI escape sequences for colored terminal text work on Windows by intercepting and converting them to win32 API calls, while passing through unchanged on other platforms.
Install it if you need colored terminal output to work on Windows or want to use ANSI-based libraries portably; skip it only if you target non-Windows platforms…
Measures the displayed width of Unicode strings in terminals, accounting for wide characters, combining marks, and terminal escape sequences that standard Python string functions mishandle.
Install it if your application formats text for terminals and handles non-ASCII characters.
Run a subprocess in a pseudo terminal (pty) and interact with its input and output, enabling automation of interactive programs that require terminal features like password prompts or curses-style interfaces.
However, note that it is aging (last release 2020-12-28) and not actively maintained; it works well for its narrow, well-defined purpose but won't receive updates for…
Pexpect spawns and controls interactive console applications by sending input and matching output patterns, automating tasks that would otherwise require manual interaction.
See also asciichartpy · asciidag · treescope · ascii-magic · ascii-guard · terminaltables3 · rich-pixels · art · seedir · pycowsay