Skip to main content

puffit generates directory structure from text templates

Project description

PuffIt

I've always wanted to take an example directory structure for a project structure and pipe that into an application to make it happen. So that's what this is for.

For example I would like to take this:

root/
├── tasks/
│   ├── __init__.py
│   ├── task_a.py
│   └── task_b.py
├── core/
│   ├── app.py
│   ├── celery_worker.py
│   └── config.py
├── Dockerfile
├── docker-compose.yml
├── requirements.txt
└── README.md

And have it turn into this:

alt text

GitHub Actions Status

Coverage Format Publish Security Version

Test Status

Tests coverage

Features

Supports a variety of layout syntaxes.

Installation

pipx install puffit

Usage

Create your template.pft file containing the textual layout for the project. Then just run puffit template.pft where you'd like to create your new project directory. Check out templates/ for example .pft files.

Contributing

Coming Soon

License

This project is licensed under the MIT License - see the LICENSE file for details.

Roadmap

  • Integreate CI/CD release automation
  • Improve error handling
  • Improve documentation
  • Implement logging

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

puffit-1.0.5.tar.gz (4.7 kB view details)

Uploaded Source

Built Distribution

puffit-1.0.5-py3-none-any.whl (5.9 kB view details)

Uploaded Python 3

File details

Details for the file puffit-1.0.5.tar.gz.

File metadata

  • Download URL: puffit-1.0.5.tar.gz
  • Upload date:
  • Size: 4.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.5

File hashes

Hashes for puffit-1.0.5.tar.gz
Algorithm Hash digest
SHA256 05928ee2d9cbf1972e330630ccc1b8a5bcf4350acc7879d7aaaed45ffac1477d
MD5 cbb8f10f194fbe6c7c33608e7dbf8b9a
BLAKE2b-256 8f8ebdfb9b860f1ab88f0e1b1116e0e745b5e3cf3f1edd3df25e7e54d36cf909

See more details on using hashes here.

File details

Details for the file puffit-1.0.5-py3-none-any.whl.

File metadata

  • Download URL: puffit-1.0.5-py3-none-any.whl
  • Upload date:
  • Size: 5.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.5

File hashes

Hashes for puffit-1.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 9435b821c538bd66d44ba2b1db10ebc8fd65d5a12aa2f92983f2334f686a6306
MD5 5d9b4cc06651deb5346e0258802cc0d8
BLAKE2b-256 455a014a4e515a56108dc9abad2a4dfccd5375d711669d095002ae6799157e0e

See more details on using hashes here.

Supported by

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