Python project template
A template for new Python projects.
Features
- Automatically builds PDoc documentation & uploads package to PyPI on new GitHub release, thanks to GitHub actions;
- Tests with pyTest before uploading to PyPI (or you can test manually with
workflow-dispatch); - Ready-to-go
setup.pyfile; - Scripts to build documentation and compile as a Python package;
- A to-do list below;
- Possibly more ;)
Your to-do list
(Approx. time to set up: 15 - 25 minutes)
- Edit
# FIXMElines to match your project;- setup.py
- Package name
- License
- Version
- Author
- Author email
- Description
- Keywords
- Classifiers
- Repository URL
- setup.py
- Setup virtualenv (
scripts/setup_virtualenv_windows.ps1for Windows); - Rename
python_project_templatefolder and start writing your source code; - Add your dependencies to
requirements.txt; - Update .gitingore with your stuff;
- Replace this
README.mdfile with a fancier one; - Upload code to your GitHub repository;
- Turn on GitHub pages and use
documentationas your pages branch; - Add your editior to
.gitignore; - Add your PyPI API key to GitHub secrets (
PYPI_API_TOKEN); - When your are done, make a new release at GitHub to build documentation and upload to PyPI;
- Don't forget to bump version in
setup.pyeverytime you do a new release!!!
- Don't forget to bump version in
That should be it. Happy coding!
If you have any questions or found a bug, please open a new issue in this repository.
🎁
Support me
I create free software to benefit people. If this project helps you and you like it, consider supporting me by donating via cryptocurrency:
- Bitcoin:
bc1q6n7f4mllak9xts355wlyq2n3rce60w2r5aswxa;1LMS4u41beDGMb9AXmXzfH7ZkZSwGSkSyx - Ethereum:
0x12C598b3bC084710507c9d6d19C9434fD26864Cc - Litecoin:
LgHQK1NQrRQ56AKvVtSxMubqbjSWh7DTD2 - Dash:
Xe7TYoRCYPdZyiQYDjgzCGxR5juPWV8PgZ - Zcash:
t1Pesobv3SShMHGfrZWe926nsnBo2pyqN3f - Dogecoin:
DALxrKSbcCXz619QqLj9qKXFnTp8u2cS12 - Ripple:
rNQsgQvMbbBAd957XyDeNudA4jLH1ANERL - Monero:
48TfTddnpgnKBn13MdJNJwHfxDwwGngPgL3v6bNSTwGaXveeaUWzJcMUVrbWUyDSyPDwEJVoup2gmDuskkcFuNG99zatYFS - Bitcoin Cash:
qzx6pqzcltm7ely24wnhpzp65r8ltrqgeuevtrsj9n - Ethereum Classic:
0x383Dc3B83afBD66b4a5e64511525FbFeb2C023Db
More cryptocurrencies are supported. If you are interested in donating with a different one, please E-mail me. No other forms of donation are currently supported.