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, 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.3

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.3
File Size Uploaded Provenance Actions
treex_cli-0.2.3.tar.gz 27.9 kB With provenance Details for treex_cli-0.2.3.tar.gz

Built distributions (wheels)

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

Total release size: 7.4 MB

Release files / treex_cli-0.2.3.tar.gz

Download URL treex_cli-0.2.3.tar.gz
Size 27.9 kB
Tags Source
SHA-256 checksum
How to use checksums
238bb1cbfcc125b7b3f753030aca270ca26ec9b24f899974e566d352271aadde
BLAKE2b-256 checksum
How to use checksums
a27323405da5ddb10134bfd7dea0772d04f34997a69cb780df1528c153ee1df7
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 25, 2026.

Transparency log

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

Download URL treex_cli-0.2.3-cp313-abi3-win_amd64.whl
Size 883.2 kB
Tags CPython 3.13 Windows x86-64 abi3
SHA-256 checksum
How to use checksums
f556b1610c0f5d047dfb0a32c3e7c1a26d5361102a334ad02e286c824e86610f
BLAKE2b-256 checksum
How to use checksums
33a1cdca18b1014ea09ef138bc296eb44be733b6e5f1d09de1f415c6acdc6361
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 25, 2026.

Transparency log

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

Download URL treex_cli-0.2.3-cp313-abi3-win32.whl
Size 820.2 kB
Tags CPython 3.13 Windows x86-32 abi3
SHA-256 checksum
How to use checksums
afa9475876d3ebd691c76f5ad5cadbed1b26e18a7dbd0af58a299c3363393c03
BLAKE2b-256 checksum
How to use checksums
4757bcd5267fd0cab2a59ec981d1ef7c36a24587a4ff0302b49528fd9209cd30
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 25, 2026.

Transparency log

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

Download URL treex_cli-0.2.3-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
19bba606a894f563d3c3aaba5c4532c6e64f04d8eca4bc02cda601fb8588d63b
BLAKE2b-256 checksum
How to use checksums
da54afc482305db1ee7e448f61b7a039f07d4436acfbec04e8bbb46e93cc8d5e
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 25, 2026.

Transparency log

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

Download URL treex_cli-0.2.3-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
6bd4e60f19562a79d59e600df0000ecbd2efd347aa9f5c7918ef320b8a50f98a
BLAKE2b-256 checksum
How to use checksums
68062025a562a6c070b4b1bc8b1a4bc6aac9487552bc40f00495b52abc021e7f
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 25, 2026.

Transparency log

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

Download URL treex_cli-0.2.3-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
83854dccbee8db6f419462ba73679f616948ca834937620d6329de527f567e7d
BLAKE2b-256 checksum
How to use checksums
b4a6be46947fd0813bf3b58df3dd4054b4ff1a77330d7fba5f96bc563ef6bf6a
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 25, 2026.

Transparency log

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

Download URL treex_cli-0.2.3-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
3151679cc04022cd9a4f1787bf34bb077253864e16d4ec8375cef666144bd502
BLAKE2b-256 checksum
How to use checksums
1092f3ba73b0ea963ea43cc1a715870ac754b85ddd753155c308b63bde20d818
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 25, 2026.

Transparency log

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

Download URL treex_cli-0.2.3-cp313-abi3-macosx_11_0_arm64.whl
Size 961.9 kB
Tags CPython 3.13 abi3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
60a08113b67f919c27b4909b26b2d0c8503eadd274f6c16cfd0dc11a1cdd4c0b
BLAKE2b-256 checksum
How to use checksums
97ad9c6598c3246c7e3cd39be28a215756441bc7a069869d8d1a9321c75ac396
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 25, 2026.

Transparency log

Security for treex-cli 0.2.3

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.3.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 25, 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