Created: 2025-11-02
Status: ✅ Complete and Ready to Use
Location: /Users/tonyeales/Projects/python-project-template/
A complete, enterprise-grade Python Project Template containing all development infrastructure, tooling, and best practices from pom-core, PomAI, and Pomothy.
This is a GitHub Template Repository - use it to bootstrap new Python projects with all best practices built-in.
| File | Purpose | Status |
|---|---|---|
pyproject.toml |
Project config (ruff, mypy, pytest) | ✅ Complete |
.pre-commit-config.yaml |
Pre-commit hooks | ✅ Complete |
.gitignore |
Standard Python gitignore | ✅ Complete |
requirements-dev.txt |
Development dependencies | ✅ Complete |
LICENSE |
MIT License | ✅ Complete |
CHANGELOG.md |
Version history template | ✅ Complete |
| Script | Purpose | Status |
|---|---|---|
scripts/bump_version.py |
Semantic version management | ✅ Complete |
| Document | Purpose | Status |
|---|---|---|
README.md |
Comprehensive template guide | ✅ Complete |
QUICK_START.md |
Step-by-step setup guide | ✅ Complete |
docs/DEVELOPMENT.md |
Development workflow | ✅ Complete |
docs/CONTRIBUTING.md |
Contributing guidelines | ✅ Complete |
| File | Purpose | Status |
|---|---|---|
Dockerfile |
Production Docker image | ✅ Complete |
docker-compose.yml |
Development environment | ✅ Complete |
| File | Purpose | Status |
|---|---|---|
tests/conftest.py |
Pytest configuration & fixtures | ✅ Complete |
tests/unit/ |
Unit tests directory | ✅ Created |
tests/integration/ |
Integration tests directory | ✅ Created |
| File | Purpose | Status |
|---|---|---|
.github/workflows/ci.yml |
GitHub Actions workflow | ✅ Complete |
| File | Purpose | Status |
|---|---|---|
.cursor/rules.md |
AI assistant rules | ✅ Complete |
| Directory | Purpose | Status |
|---|---|---|
src/ |
Source code | ✅ Created |
tests/ |
Test suite | ✅ Created |
docs/ |
Documentation | ✅ Created |
scripts/ |
Development scripts | ✅ Created |
- ✅ Semantic versioning automation
- ✅ Git tag creation and pushing
- ✅
bump_version.pyscript (major/minor/patch) - ✅ Dry-run mode for testing
- ✅ Ruff - Fast linting (replaces 10+ tools)
- ✅ Ruff Format - Consistent code style
- ✅ MyPy - Optional type checking
- ✅ Pre-commit hooks - Auto-fixing on commit
- ✅ Bandit - Security scanning
- ✅ Pytest - Testing framework
- ✅ Coverage - Code coverage reporting
- ✅ Fixtures and conftest.py
- ✅ Test markers (slow, integration, unit)
- ✅ Docker development environment
- ✅ GitHub Actions CI/CD
- ✅ Pre-commit hooks
- ✅ Comprehensive documentation
- ✅ Cursor AI rules
- ✅ Evidence-based debugging protocols
- ✅ Code quality standards
- ✅ Project-specific conventions
- Push template to GitHub
- Mark repository as "Template repository"
- Use "Use this template" button for new projects
cp -r python-project-template my-new-project
cd my-new-project
rm -rf .git
git init
# Customize and start developing# 1. Customize
vim pyproject.toml # Update name, description, authors
# 2. Install
python -m venv venv
source venv/bin/activate
pip install -r requirements-dev.txt
pre-commit install
# 3. Verify
pre-commit run --all-files
pytest- Ruff - Replaces black, isort, flake8, autoflake, pyupgrade
- MyPy - Static type checking
- Pytest - Test framework
- pytest-cov - Coverage reporting
- pytest-mock - Mocking utilities
- pytest-asyncio - Async support
- Bandit - Security vulnerability scanner
- detect-secrets - Secret detection
- pre-commit - Git hook framework
- ipython - Enhanced REPL
- ipdb - Interactive debugger
- ✅ PomAI -
/Users/tonyeales/Projects/PomAI/scripts/bump_version.py - ✅ Pomothy -
/Users/tonyeales/Projects/pomothy/scripts/bump_version.py
Both projects now have version management!
python-project-template/
├── .cursor/
│ └── rules.md # Cursor AI configuration
├── .github/
│ └── workflows/
│ └── ci.yml # CI/CD pipeline
├── docs/
│ ├── CONTRIBUTING.md # Contributing guide
│ └── DEVELOPMENT.md # Development guide
├── scripts/
│ └── bump_version.py # Version management
├── src/ # Your package code goes here
├── tests/
│ ├── unit/ # Unit tests
│ ├── integration/ # Integration tests
│ └── conftest.py # Pytest fixtures
├── .gitignore # Python gitignore
├── .pre-commit-config.yaml # Pre-commit hooks
├── CHANGELOG.md # Version history
├── Dockerfile # Production Docker
├── docker-compose.yml # Development Docker
├── LICENSE # MIT License
├── pyproject.toml # Project configuration
├── QUICK_START.md # Quick setup guide
├── README.md # Main documentation
└── requirements-dev.txt # Dev dependencies
- Semantic versioning
- Conventional commits
- Code quality automation
- Test-driven development
- Documentation-first approach
- Docker for consistency
- CI/CD automation
- Security-first mindset
- Ruff (modern linting)
- Pre-commit hooks
- Docker development
- GitHub Actions
- Pytest testing
- Type hints with MyPy
-
Push to GitHub
cd /Users/tonyeales/Projects/python-project-template gh repo create python-project-template --public --source=. --push -
Mark as Template
- Go to GitHub repository settings
- Check "Template repository"
-
Add README Badge
[](https://github.com/yourusername/python-project-template/generate)
- Click "Use this template" on GitHub
- Follow
QUICK_START.md - Start building!
This template is battle-tested and incorporates:
- ✅ Real-world experience from 3 production projects
- ✅ Enterprise-grade infrastructure
- ✅ AI-optimized for Cursor development
- ✅ Zero configuration - works out of the box
- ✅ Highly customizable - adapt to your needs
- ✅ Well-documented - comprehensive guides
- ✅ Modern tools - latest best practices
Built from best practices learned across:
- pom-core - Shared library architecture
- PomAI - Enterprise application patterns
- Pomothy - Production deployment experience
MIT License - Free to use for any project!
🚀 Ready to use for all future Python projects!