Skip to main content

treex

Git-aware directory tree utility

Command-line directory tree utility with metadata and Git ignore support.


About

treex recursively scans a directory and displays its contents as a tree, including file and directory metadata. It respects .gitignore rules inside Git repositories and provides additional options for filtering and customizing the output.

Features

  • Respects .gitignore rules inside Git repositories
  • Displays human-readable file sizes
  • Displays recursive directory sizes
  • Displays line counts for text files
  • Identifies binary and unreadable files by type
  • Optionally displays modification timestamps
  • Optionally includes or excludes paths using glob patterns
  • Optionally includes or excludes paths using regular expressions
  • Optionally limits the depth of the displayed tree

Status

Latest Version
Tests
Supported Python Versions

Requirements

  • Python 3.13+
  • UTF-8-compatible terminal

Installation

Install treex from PyPI using your preferred Python package manager:

  • pip: pip install treex-cli
  • pipx: pipx install treex-cli
  • uv: uv tool install treex-cli

Prebuilt wheels are available for common platforms. See Platform Support for details.


Git ignore support

treex uses Gitoxide (gix), a native Rust implementation of Git functionality, to evaluate .gitignore rules without invoking the Git executable. Git does not need to be installed for ignore matching to work.

When the specified directory is inside a Git working tree, treex respects applicable .gitignore rules by default. Outside a Git working tree, Git ignore filtering is disabled. Use --all to include files ignored by Git.


Usage

$ treex --help
usage: treex [OPTIONS] [directory]

List directory contents as a tree with file and directory metadata.

positional arguments:
  directory                    directory to scan (default: current directory)

options:
  -h, --help                   show this help message and exit
  -V, --version                show version information and exit
  -a, --all                    show all files, including those ignored by Git
  -m, --modified               show file modification times
  -q, --quiet                  don't show file metadata
  -d, --dirs                   show directories only
  -s, --summary                show summary only
  -i, --include PATTERN        include paths matching a glob pattern
  -e, --exclude PATTERN        exclude paths matching a glob pattern
  -I, --include-regex PATTERN  include paths matching a regular expression
  -E, --exclude-regex PATTERN  exclude paths matching a regular expression
  -D, --depth DEPTH            limit levels displayed below starting directory

Filtering paths

Use --include and --exclude to filter paths by glob pattern:

treex --include '*.py'
treex --exclude 'tests/*.py'
treex --include '*.py' --exclude 'test_*.py'

Use --include-regex and --exclude-regex to filter paths by regular expression:

treex --include-regex '^src/'
treex --exclude-regex '(^|/)tests/'
treex --include-regex '\.py$' --exclude-regex '(^|/)test_[^/]*\.py$'

Patterns match paths relative to the starting directory, using forward slashes as separators. Matching is case-sensitive. Glob patterns use * to match any characters, including directory separators. Regular expressions use Python's regex syntax. Exclusions take precedence over inclusions.

Note: quote glob and regex patterns to prevent the shell from interpreting them before treex receives them.


Screenshot

Screenshot

Platform support

Prebuilt wheels are available for Python 3.13+ on the following platforms:

Platform Architecture
Linux (glibc) x86_64, aarch64
Linux (musl) x86_64, aarch64
macOS Apple Silicon (ARM64)
Windows 32-bit (x86), 64-bit (x86_64)

These prebuilt binary wheels let you install the treex-cli package without compiling the Rust extension yourself.

Installing on other platforms

If a prebuilt binary is not available for your platform, you can install the package from the source distribution on PyPI or directly from the source repository. This requires a Rust toolchain.

For more information about installing Rust, see the official Rust installation guide

Metadata

Release files for treex-cli 0.2.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for treex-cli 0.2.1
File Size Uploaded Provenance Actions
treex_cli-0.2.1.tar.gz 28.0 kB With provenance Details for treex_cli-0.2.1.tar.gz

Built distributions (wheels)

Table of built distributions (wheels) for treex-cli 0.2.1
File Actions
treex_cli-0.2.1-cp313-abi3-win_amd64.whl CPython 3.13 abi3 Windows x86-64 Details for treex_cli-0.2.1-cp313-abi3-win_amd64.whl
treex_cli-0.2.1-cp313-abi3-win32.whl CPython 3.13 abi3 Windows x86-32 Details for treex_cli-0.2.1-cp313-abi3-win32.whl
treex_cli-0.2.1-cp313-abi3-musllinux_1_2_x86_64.whl CPython 3.13 abi3 Linux musl 1.2+ x86-64 Details for treex_cli-0.2.1-cp313-abi3-musllinux_1_2_x86_64.whl
treex_cli-0.2.1-cp313-abi3-musllinux_1_2_aarch64.whl CPython 3.13 abi3 Linux musl 1.2+ ARM64 Details for treex_cli-0.2.1-cp313-abi3-musllinux_1_2_aarch64.whl
treex_cli-0.2.1-cp313-abi3-manylinux_2_28_x86_64.whl CPython 3.13 abi3 Linux glibc 2.28+ x86-64 Details for treex_cli-0.2.1-cp313-abi3-manylinux_2_28_x86_64.whl
treex_cli-0.2.1-cp313-abi3-manylinux_2_28_aarch64.whl CPython 3.13 abi3 Linux glibc 2.28+ ARM64 Details for treex_cli-0.2.1-cp313-abi3-manylinux_2_28_aarch64.whl
treex_cli-0.2.1-cp313-abi3-macosx_11_0_arm64.whl CPython 3.13 abi3 macOS 11.0+ ARM64 Details for treex_cli-0.2.1-cp313-abi3-macosx_11_0_arm64.whl

Total release size: 7.3 MB

Release files / treex_cli-0.2.1.tar.gz

Download URL treex_cli-0.2.1.tar.gz
Size 28.0 kB
Tags Source
SHA-256 checksum
How to use checksums
5a8c277b02f48f27e927cad94f19d015b810c3e76b6c6d014f2b1956cf959ed2
BLAKE2b-256 checksum
How to use checksums
e5ca98d4859781e78c4a4e23ee5fd54c9ea5652958a9ab4dfcfd2e32750466de
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 21, 2026.

Transparency log

Release files / treex_cli-0.2.1-cp313-abi3-win_amd64.whl

Download URL treex_cli-0.2.1-cp313-abi3-win_amd64.whl
Size 872.4 kB
Tags CPython 3.13 Windows x86-64 abi3
SHA-256 checksum
How to use checksums
05afd269880706a0fc8fee0683664a28005272eabe4208d7f03f7506e6d1d4c4
BLAKE2b-256 checksum
How to use checksums
b3c9ff576734621fc014f09da2612a6babc61ae5b38bee3807181f45866c99e1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 21, 2026.

Transparency log

Release files / treex_cli-0.2.1-cp313-abi3-win32.whl

Download URL treex_cli-0.2.1-cp313-abi3-win32.whl
Size 813.4 kB
Tags CPython 3.13 Windows x86-32 abi3
SHA-256 checksum
How to use checksums
4aadc024b6b76ace4c429cbd5d3548a46ec637f36780e022d65baf353a04a43a
BLAKE2b-256 checksum
How to use checksums
5cdae3e169903abf4672a989efe47e89fa45540b76dd6264e01ddab0d7603aef
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 21, 2026.

Transparency log

Release files / treex_cli-0.2.1-cp313-abi3-musllinux_1_2_x86_64.whl

Download URL treex_cli-0.2.1-cp313-abi3-musllinux_1_2_x86_64.whl
Size 1.2 MB
Tags CPython 3.13 Linux musl 1.2+ x86-64 abi3
SHA-256 checksum
How to use checksums
73aef0ee582a567868b93226b838b6f4e591cbf8b9761a48f55105c392b3f5c5
BLAKE2b-256 checksum
How to use checksums
7b0f97eced8238f3bceff71745810f8e97bf61f97cbf21d30f8c0bb8e65916c8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 21, 2026.

Transparency log

Release files / treex_cli-0.2.1-cp313-abi3-musllinux_1_2_aarch64.whl

Download URL treex_cli-0.2.1-cp313-abi3-musllinux_1_2_aarch64.whl
Size 1.2 MB
Tags CPython 3.13 Linux musl 1.2+ ARM64 abi3
SHA-256 checksum
How to use checksums
73adfb486693b8c146a5114135cb22045252ced2fea6a7c9d026937dd1c6851c
BLAKE2b-256 checksum
How to use checksums
2f5a0e2939b0bff3d7120e1a5deb140fdab50855a2897ed0b794b079f995267b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 21, 2026.

Transparency log

Release files / treex_cli-0.2.1-cp313-abi3-manylinux_2_28_x86_64.whl

Download URL treex_cli-0.2.1-cp313-abi3-manylinux_2_28_x86_64.whl
Size 1.1 MB
Tags CPython 3.13 Linux glibc 2.28+ x86-64 abi3
SHA-256 checksum
How to use checksums
2c8fc6f6ffb494659c3e7d198fddeb96541bc08454b44a5581b420c5fda23d9a
BLAKE2b-256 checksum
How to use checksums
59ea455843a7b51022e869d6f2d1d70c88764cafe3df2378dbb7ab8bf634fcc6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 21, 2026.

Transparency log

Release files / treex_cli-0.2.1-cp313-abi3-manylinux_2_28_aarch64.whl

Download URL treex_cli-0.2.1-cp313-abi3-manylinux_2_28_aarch64.whl
Size 1.1 MB
Tags CPython 3.13 Linux glibc 2.28+ ARM64 abi3
SHA-256 checksum
How to use checksums
dc108c23abcf6ce46c82cdbba57e7c804cf127ed22b16c9a8afe4e7b035a7ddd
BLAKE2b-256 checksum
How to use checksums
7da7793cc4a5b6c53328009974a11f12902c9b41d9f017de0a84c661a5a85a05
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 21, 2026.

Transparency log

Release files / treex_cli-0.2.1-cp313-abi3-macosx_11_0_arm64.whl

Download URL treex_cli-0.2.1-cp313-abi3-macosx_11_0_arm64.whl
Size 959.8 kB
Tags CPython 3.13 abi3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
3aade7289e8fa5e9219ea92af9e9632c5beaed526070a881296cec18d29e8472
BLAKE2b-256 checksum
How to use checksums
c39ea4ba3b8a90307dd3246036433437c6b8971d06509d4f9023625a28f2dce3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 21, 2026.

Transparency log

Security for treex-cli 0.2.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 8 files in this release have been uploaded with provenance metadata.

Select from 8 files

Attestation for treex_cli-0.2.1.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 21, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page