Skip to content

Latest commit

Β 

History

History
54 lines (41 loc) Β· 1.84 KB

File metadata and controls

54 lines (41 loc) Β· 1.84 KB

Python Project Template

My personal template for Python projects.

Features

  • Modern Python tooling with uv for dependency management and environment setup
  • Pre-configured pyproject.toml
  • Automated workflows - just commands for testing, linting, and building
  • Code quality tools: ruff for linting and formatting, pre-commit hooks
  • Testing setup with pytest and Hatch for cross-version testing
  • GitHub Actions integration: optional workflows for linting, testing and PyPI publishing
  • Conditional repo setup: if gh is installed, optionally create a public/private GitHub repo
  • Licenses from choosealicense.com
  • Basic README.md with badges and installation instructions

Requirements

  • Python 3.12 or higher
  • sprout
  • Git

Usage

sprout "https://github.com/zigai/python-project-template.git" /path/to/your/project

Generated Project Structure

your-project/
β”œβ”€β”€ your_package/
β”‚   └── __init__.py
β”œβ”€β”€ tests/
β”‚   └── test_your_package.py
β”œβ”€β”€ .github/workflows/          
β”œβ”€β”€ pyproject.toml             
β”œβ”€β”€ README.md                  
β”œβ”€β”€ CONTRIBUTING.md             
β”œβ”€β”€ Justfile                    
β”œβ”€β”€ LICENSE                    
└── .gitignore                  

Similar Templates

License

MIT License