Skip to main content

A Python CLI to generate a tree structured diagram for any directory

Project description

gendia

PyPI Downloads


A Python CLI to generate a tree structured diagram for any directory!


Imagine this: you are on Discord and is request help from someone about a project you are working on. You want to show the structure of your project directory to the person. You can't just send a screenshot of the directory because it's too big and the person won't be able to see the whole structure. You can't just send a text file with the structure because it's too boring and the person won't be able to understand it easily. What do you do? You use gendia!

Heres an example of a tree structured diagram generated by gendia:

project
├── src
│   ├── main.py
│   ├── utils
│   │   ├── __init__.py
│   │   ├── helper.py
│   │   └── helper2.py
│   ├── tests
│   │   ├── __init__.py
│   │   ├── test_main.py
│   │   └── test_helper.py
│   └── README.md
├── LICENSE
└── .gitignore

Not just that, it is color coded! The directories are in blue, and different file types are in different colors. This makes it easier to understand the structure of the directory.

Installation

To add gendia to your project, run:

pip install gendia

This should install gendia to your project. You can now use it to generate tree structured diagrams for your directories.

Usage

To use gendia, run:

gendia path/to/directory

This should generate a tree structured diagram for the current working directory. You can also specify the output file by using the -o flag:

gendia -o output.txt

This should generate a tree structured diagram for the current working directory and save it to output.txt.

--hidden flag can be used to show hidden files and directories:

gendia --hidden

--depth flag can be used to specify the max depth of the foulders to go into, 1 being the lowest:

gendia --depth 1

Config files

Gendia's config file can reside in either of the 2 directory's:

~/gendia_config.ini

or

~/Scripts/gendia_config.ini

You can add the following contents to the file:

[settings]
exclude = .git,__pycache__,venv

The excluded files and foulders in the config file will be appended to the other excluded files you later specify with the --exclude flag.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gendia-1.6.0.tar.gz (5.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

gendia-1.6.0-py3-none-any.whl (6.1 kB view details)

Uploaded Python 3

File details

Details for the file gendia-1.6.0.tar.gz.

File metadata

  • Download URL: gendia-1.6.0.tar.gz
  • Upload date:
  • Size: 5.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.13.0

File hashes

Hashes for gendia-1.6.0.tar.gz
Algorithm Hash digest
SHA256 85e683089e3b7849a8ad75deef814eead6517b37d1244e19ed3b98c89bd064a0
MD5 d49ea35ec748dfa9f62b7d456ba2d913
BLAKE2b-256 5a161b3660ff69a34fb4ef4a7ab9e4fb0cb4411bc783f59eb2b6d01d0a358f66

See more details on using hashes here.

File details

Details for the file gendia-1.6.0-py3-none-any.whl.

File metadata

  • Download URL: gendia-1.6.0-py3-none-any.whl
  • Upload date:
  • Size: 6.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.13.0

File hashes

Hashes for gendia-1.6.0-py3-none-any.whl
Algorithm Hash digest
SHA256 124296b535ede5a59b809f32b040f6f61287cdac2958c10a3cb7a0b08a5b8905
MD5 c6abd05687473dc83f3ca6ac92f74e36
BLAKE2b-256 975d317b2b9a5f9ed9707d33e8984daaa779892611729ca2635bc6b46947c79a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page