Route
Route is a Python package for generating directory tree, especially in any python project or package.
Installation
pip install route
Usage
from route import directory_tree
directory_tree(path=".", save_to_file=True, display_output=True)
Output:
🛸 route
├── README.md
├── run_me.py
├── setup.py
└── 🚀 route
├── dir.py
├── directory_tree.py
├── emoji.py
├── generate_get_dir_prefix.py
├── setup_utils.py
└── starts_with.py
How to Use Route in Your Python Package
- Use the following code at the top of your
setup.pyfile (Script 1) - Add
post_install_commandandpost_develop_commandto thecmdclassargument in thesetupfunction (Script 2) - See the
setup.pyfile for an example.
Script 1
from route import get_post_develop_command, get_post_install_command
import os
# Define the arguments for the dir function
dir_path = os.getcwd()
ignore_ends_with={'.pyc', '.egg-info', '.ipynb'}
ignore_exact_match={
'__init__.py', '__pycache__', '.git', '.idea', '.pytest_cache', '.ipynb_checkpoints',
'dist', 'build', '.gitignore'
}
specific_prefixes = {
'* is_root': '🛸',
'* is_module': '🚀',
'* is_test_dir': '🧪',
'test': '🧪',
'tests': '🧪'
}
dir_args = {
'path': dir_path,
'ignore_ends_with': ignore_ends_with,
'ignore_exact_match': ignore_exact_match,
'specific_prefixes': specific_prefixes,
'save_to_file': True, # This creates a Markdown file
'output_file': 'DIRECTORY.md' # This is the name of the file that will be created
}
post_develop_command = get_post_develop_command(dir_args=dir_args)
post_install_command = get_post_install_command(dir_args=dir_args)
Script 2
setup(
...
cmdclass={
"install": post_install_command,
"develop": post_develop_command,
},
...
)
Metadata
Release files for route 2025.2.23.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| route-2025.2.23.1.tar.gz | 8.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| route-2025.2.23.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 16.8 kB
Release files / route-2025.2.23.1.tar.gz
| Download URL | route-2025.2.23.1.tar.gz |
|---|---|
| Size | 8.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
3d43d4a058c55ec4d1c345be318dd8d55e7e410717e0fc721ee92f3a3d158273
|
|
BLAKE2b-256 checksum How to use checksums |
6c0189a4393c911a82a9666c2613cccfa5f3b482955a70ace0fc30b159be6b14
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.10.15
|
Release files / route-2025.2.23.1-py3-none-any.whl
| Download URL | route-2025.2.23.1-py3-none-any.whl |
|---|---|
| Size | 8.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
6e8d7335666b46c74a02831e368233cf1bd9dbea52980b11f290436c879bb3d4
|
|
BLAKE2b-256 checksum How to use checksums |
372eee80b0565d9f773f979387d3449b43acb269e0fca6571ee2cf6f96d726a2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.10.15
|