Skip to content

๐Ÿ“ฆ Ready-to-use GitHub template repository for Python 3 Docker applications with development best practices. ๐Ÿ› ๏ธ Includes dependency management, testing, linting, CI/CD workflow, and containerization. ๐Ÿš€ Just click "Use this template" to start your project.

License

Notifications You must be signed in to change notification settings

amerkurev/python-template-repo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

11 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Python Template Repository

Build Coverage Status License

๐Ÿ“ฆ Ready-to-use GitHub template repository for Python 3 Docker applications with development best practices.
๐Ÿ› ๏ธ Includes dependency management, testing, linting, CI/CD workflow, and containerization.
๐Ÿš€ Just click "Use this template" to start your project.

Features

  • Python 3.13 compatibility
  • Designed for Docker-based projects (not libraries) like this doku project
  • Produces a ready-to-use Docker image
  • Dependency management with pip-tools, separating direct from transitive dependencies
  • Testing setup with Pytest and Coverage reporting
  • Fast and convenient Ruff linter and formatter
  • Automatic documentation generation from README, integrated with GitHub Actions and published to GitHub Pages
  • Development workflow with live code mounting for real-time Docker development
  • Comprehensive Makefile with useful development commands
  • Pre-configured GitHub CI workflow (using make commands)
  • Git version and commit hash integrated into the code via environment variables

Available Commands

This project includes several convenient make commands to help with development:

  • make info - Display current revision information (git tag and SHA)
  • make pip-sync - Generate requirements.txt from requirements.in and sync your Python environment
  • make build - Build Docker image for the project
  • make lint - Run code linting with ruff
  • make fmt - Format code with ruff (runs lint first)
  • make test - Run unit tests in Docker container
  • make cov - Generate HTML test coverage reports
  • make dev - Start development container with mounted source code, environment variables and exposed port 8000

License

MIT

About

๐Ÿ“ฆ Ready-to-use GitHub template repository for Python 3 Docker applications with development best practices. ๐Ÿ› ๏ธ Includes dependency management, testing, linting, CI/CD workflow, and containerization. ๐Ÿš€ Just click "Use this template" to start your project.

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Sponsor this project