filemaptree
Deterministic ASCII file tree renderer.
Version
0.1.0
Purpose
filemaptree renders a deterministic ASCII file tree. It is a single-purpose tool designed for clean, stable, and reusable directory visualization.
Installation
pip install -e .
Usage
Basic usage
# Current directory
python -m filemaptree.main .
# Specific path
python -m filemaptree.main /path/to/directory
Depth control
# Show only root
python -m filemaptree.main . --depth 0
# Show root + immediate children
python -m filemaptree.main . --depth 1
# Show root + two levels
python -m filemaptree.main . --depth 2
Ignore patterns
# Ignore specific names (exact match)
python -m filemaptree.main . --ignore __pycache__,node_modules,.git
Combined options
python -m filemaptree.main /path/to/repo --depth 3 --ignore .git,node_modules
Features
- Deterministic ordering: Directories first, then files, both alphabetically (case-insensitive)
- Depth control: Limit tree depth with
--depth N - Ignore patterns: Skip specific directory/file names with
--ignore - ASCII rendering: Clean tree structure using
├──,└──,│ - Cross-platform: Stable output across operating systems
Architecture
filemaptree/
├── __init__.py # Package marker
├── main.py # Entry point
├── cli.py # Argument parsing and orchestration
├── walker.py # Directory traversal and tree building
└── renderer.py # ASCII tree rendering
Separation of concerns
- cli.py: Parses arguments, validates paths, orchestrates flow
- walker.py: Traverses filesystem, applies filters, builds Node tree
- renderer.py: Converts Node tree to ASCII output
Output example
filemaptree
├── __init__.py
├── cli.py
├── main.py
├── renderer.py
└── walker.py
Design principles
- Single-purpose tool
- Minimal and precise
- No feature creep
- Deterministic output
- Clean separation of concerns
- Production-ready code
Metadata
Release files for filemaptree 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| filemaptree-0.1.0.tar.gz | 4.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| filemaptree-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 10.0 kB
Release files / filemaptree-0.1.0.tar.gz
| Download URL | filemaptree-0.1.0.tar.gz |
|---|---|
| Size | 4.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
9cd96c8198589bddf69b39bb4587e7ef49419d85e19ad6722c0bed27dd422f82
|
|
BLAKE2b-256 checksum How to use checksums |
03918f6475cee910609fae9d12c2861acae0dc72ed22730780d4cdfc7226a52d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.2
|
Release files / filemaptree-0.1.0-py3-none-any.whl
| Download URL | filemaptree-0.1.0-py3-none-any.whl |
|---|---|
| Size | 5.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
f662b8c5aba0919f1766c5bc6ba9e6640a82f7c936761a7000118a896613b80c
|
|
BLAKE2b-256 checksum How to use checksums |
9d4dd29f567e052bae50036b93ac418d9db155889ce6e21ba21df884a1748c85
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.2
|