PyStart is a modern CLI tool for quickly creating Python projects from ready-to-use starter templates.
Inspired by tools like create-next-app, PyStart helps you bootstrap projects with a beautiful interactive CLI, clean project structures, and instant dependency setup using uv.
No more repetitive project setup. Start building immediately.
- β‘ Instant project scaffolding
- π¨ Beautiful interactive CLI prompts
- π¦ Powered by
uvfor ultra-fast dependency management - π§± Multiple starter templates
- π Clean and organized project structures
- π§ Automatic dependency installation
- π± Optional Git initialization
First install uv:
curl -Ls https://astral.sh/uv/install.sh | shThen install PyStart:
pip install pystartFor development:
uv pip install -e .Run the CLI:
pystartYou will see an interactive prompt:
? Project name: my_project
? Choose template:
β― FastAPI
CLI Tool
Telegram Bot
Flask API
? Initialize git? YesPyStart will generate your project:
β Creating project structure
β Initializing uv project
β Installing dependencies
β Initializing git repository
π Your project is ready!Example FastAPI project:
my_project/
β
βββ pyproject.toml
βββ README.md
β
βββ app/
β βββ main.py
β
βββ .gitignore
Currently supported templates:
- β‘ FastAPI API
- π₯ CLI Tool
- π€ Telegram Bot
- π Flask API
- π¦ Empty Python Project
More templates coming soon.
Clone the repository:
git clone https://github.com/yourusername/pystart.git
cd pystartInstall dependencies:
uv syncRun locally:
uv run pystartpystart/
β
βββ cli.py
βββ prompts.py
βββ generator.py
β
βββ templates/
β βββ fastapi/
β βββ flask/
β βββ telegram_bot/
β βββ cli_tool/
β
βββ utils/
PyStart aims to become a simple yet powerful Python project generator, similar to what modern JavaScript ecosystems have.
Future goals:
- π Remote templates
- π Plugin system
- π§ Smart project recommendations
- π Clean architecture templates
- π³ Docker-ready projects
- βοΈ Backend starter kits
Contributions are welcome!
If you have ideas for new templates or improvements:
- Fork the repository
- Create a new branch
- Submit a pull request
MIT License
If you like this project, consider giving it a star β on GitHub. It helps the project grow and reach more developers.
PyStart β Start your Python projects faster.