Automate Python Project Initialization & Structuring
PyCraft is a CLI tool that automates the setup of Python projects by creating structured directories, initializing virtual environments, and installing necessary dependencies.
autopycraft/
โโโ setup_scripts/
โ โโโ __init__.py # Initializes Flask app
โ โโโ routes.py # Contains API routes
โ โโโ models.py # Database models (if using SQLAlchemy)
โ โโโ templates/ # HTML templates (Jinja2)
โ โโโ static/ # CSS, JS, images
โโโ test/ # test class
โโโ venv/ # Virtual environment
โโโ config.py # Configuration settings
โโโ requirements.txt # Dependencies (flask, etc.)
โโโ app.py # Entry point
โโโ .gitignore
โโโ README.md
โก Features:
โ
Framework-specific setups (Flask, FastAPI, Django, Pygame)
โ
Automatic directory & virtual environment creation
โ
Dependency installation
โ
Open-source & customizable
pip install autopycraftOR install from source:
git clone https://github.com/N-Thander/PyCraft.git
cd PyCraft
pip install -e .After installation, use PyCraft from the command line:
pycraft setup-flask my_flask_apppycraft setup-fastapi my_fastapi_apppycraft setup-pygame my_gamepycraft setup-django my_django_appEach command will:
โ
Create the project directory
โ
Initialize a virtual environment
โ
Install necessary dependencies
โ
Generate a structured project skeleton
---๐ Automate Python Project Setup with PyCraft! ๐
Let me know if you need any modifications! ๐ฅ pycraft/templates/
---
## **๐ Contributing**
Contributions are welcome! ๐ To contribute:
1. **Fork** this repository.
2. Clone your fork:
```sh
git clone https://github.com/your-username/PyCraft.git
- Create a new branch:
git checkout -b feature-name
- Make your changes & commit:
git commit -m "Added a new feature" - Push your branch & create a Pull Request! ๐
This project is licensed under the GNU General Public License v3.0 (GPL-3.0).
See the full license here.
๐ก Have questions or suggestions? Reach out!
๐ GitHub Issues
This project is still underdevelopment and no PyPI package has been released yet.