🧰 TreeFS
A powerful CLI toolkit to build and export directory structures from tree text, YAML, JSON, or TOML configs — with support for templates, Git initialization, and cross-platform release binaries.
Originally inspired by a tiny Bash script, TreeFS has grown into a full-featured Python project that helps automate project scaffolding and structure generation.
Features
- Build directory trees from:
- Tree-formatted text files
- YAML / JSON / TOML config files
- Support for file templates and content templates
- Export file systems into tree text or structured configs
- Git integration
git initwith optional.gitignoreand hooks- Cross-platform binaries
- Build single-file executables via PyInstaller
- GitHub Actions workflow included to auto-build release binaries
🧾 Installation
Install locally using pip:
pip install .
Usage
- Build from a tree file
treefs build tree.txt myproject/
- Add optional templates and git setup
treefs build project.yaml myproj/ \
--templates ./templates \
--init-git \
--gitignore ./common_gitignore \
--git-hooks ./my-hooks
- Preview what would be created without writing to disk:
treefs build project.yaml myproj/ --dry-run
Export project structure
- Export a folder to a tree layout text:
treefs export-tree myproj/ tree.txt
- Or export to structured configs:
treefs export-config myproj/ project.yaml
treefs export-config myproj/ project.json
treefs export-config myproj/ project.toml
Bundling a binary
- If PyInstaller is installed, you can auto-bundle TreeFS:
treefs bundle treefs.py --name treefs
Metadata
Release files for treefs 2.0.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 | Provenance | |
|---|---|---|---|---|
| treefs-2.0.0.tar.gz | 6.8 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| treefs-2.0.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 13.0 kB
Release files / treefs-2.0.0.tar.gz
| Download URL | treefs-2.0.0.tar.gz |
|---|---|
| Size | 6.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
a31bbe9321119e3d07fd96792dc35e8ce8063778fae053cd48f4421c06ef4baf
|
|
BLAKE2b-256 checksum How to use checksums |
fa691763a6d0e46d09aebb56d5a99fa7db0cc6b8a30c2364961ff4acc5f0d61d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.8
|
Release files / treefs-2.0.0-py3-none-any.whl
| Download URL | treefs-2.0.0-py3-none-any.whl |
|---|---|
| Size | 6.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
b463de2f4dfe3b27d8d720ec19dbee15103d04cf2e0881e5fb1840686c6b61d5
|
|
BLAKE2b-256 checksum How to use checksums |
83041854a148700dbbc0d53375457a93275bda3015099a5c73b8c423f2e0ae43
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.8
|
Security for treefs 2.0.0
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.
No provenance found
None of the files in this release were uploaded with provenance metadata.
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.