A Python package for generating directory trees
Project description
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,
},
...
)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
route-2025.2.23.1.tar.gz
(8.4 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file route-2025.2.23.1.tar.gz.
File metadata
- Download URL: route-2025.2.23.1.tar.gz
- Upload date:
- Size: 8.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.10.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3d43d4a058c55ec4d1c345be318dd8d55e7e410717e0fc721ee92f3a3d158273
|
|
| MD5 |
e0c24cf84ff4c861fd1b5dfdb1b5e796
|
|
| BLAKE2b-256 |
6c0189a4393c911a82a9666c2613cccfa5f3b482955a70ace0fc30b159be6b14
|
File details
Details for the file route-2025.2.23.1-py3-none-any.whl.
File metadata
- Download URL: route-2025.2.23.1-py3-none-any.whl
- Upload date:
- Size: 8.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.10.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6e8d7335666b46c74a02831e368233cf1bd9dbea52980b11f290436c879bb3d4
|
|
| MD5 |
e8f3158638ef071a19c7e077f33c6c1b
|
|
| BLAKE2b-256 |
372eee80b0565d9f773f979387d3449b43acb269e0fca6571ee2cf6f96d726a2
|