

GitHub - rochacbruno/python-project-template: DO NOT FORK, CLICK ON "Use th...
source link: https://github.com/rochacbruno/python-project-template
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

Python Project Template
A low dependency and really simple to start project template for Python Projects.
See also Flask-Project-Template for a full feature Flask project including database, API, admin interface, etc.
HOW TO USE THIS TEMPLATE
DO NOT FORK this is meant to be used from Use this template feature.
- Click on Use this template
- Give a name to your project
(e.g.my_awesome_project
recommendation is to use all lowercase and underscores separation for repo names.) - Wait until the first run of CI finishes
(Github Actions will process the template and commit to your new repo) - If you want codecov Reports and Automatic Release to PyPI
On the new repositorysettings->secrets
add yourPIPY_API_TOKEN
andCODECOV_TOKEN
(get the tokens on respective websites) - Read the file CONTRIBUTING.md
- Then clone your new project and happy coding!
NOTE: WAIT until first CI run on github actions before cloning your new project.
What is included on this template?
Templates for starting multiple application types:
- Basic low dependency Python program (default) use this template
- Flask with database, admin interface, restapi and authentication use this template.
or Run
make init
after cloning to generate a new project based on a template.
A basic setup.py file to provide installation, packaging and distribution for your project.
Template uses setuptools because it's the de-facto standard for Python packages, you can runmake switch-to-poetry
later if you want.A Makefile with the most useful commands to install, test, lint, format and release your project.
Documentation structure using mkdocs
Auto generation of change log using gitchangelog to keep a HISTORY.md file automatically based on your commit history on every release.
A simple Containerfile to build a container image for your project.
Containerfile
is a more open standard for building container images than Dockerfile, you can use buildah or docker with this file.Testing structure using pytest
Code linting using flake8
Code coverage reports using codecov
Automatic release to PyPI using twine and github actions.
Entry points to execute your program using
python -m <project_name>
or$ project_name
with basic CLI argument parsing.Continuous integration using Github Actions with jobs to lint, test and release your project on Linux, Mac and Windows environments.
Curious about architectural decisions on this template? read ABOUT_THIS_TEMPLATE.md
If you want to contribute to this template please open an issue or fork and send a PULL REQUEST.
project_name
project_description
Install it from PyPI
pip install project_name
Usage
from project_name import BaseClass from project_name import base_function BaseClass().base_method() base_function()
$ python -m project_name #or $ project_name
Development
Read the CONTRIBUTING.md file.
Recommend
-
172
Speed up your Python using Rust
-
93
py2rs From Python into Rust let x = Rust::from("Python"); A quick reference guide for the Pythonista in process of becoming a Rustacean.
-
68
November 7, 2017 Gitignore.io Template Fork Growing Beyond GitHub’s gitignore Template...
-
90
README.md 基...
-
374
README.md
-
69
README.md
-
8
MiniWASM - A minimalist Rust WebAssembly project template This is a minimal Rust-powered WebAssembly application template. It was designed to showcase what must be done to get Rust-powered WebAssembly going with only a small amount o...
-
32
Raspberry Pi Pico template project Dependencies: All Nim dependencies can be fetched(after nimble is installed, I suggest using choosenim for installing Nim.) with, nimb...
-
8
Fork 自微軟的 Pyjion 專案的 Python 3.10 + JIT 方案 在 Hacker News 上看到「Pyjion – A Python JIT Compiler (trypyjion.com)」...
-
6
CMake C++ Project Template Division with a remainder library Thank you for your interest in this project! Are you just starting with CMake or C++? Do you need some easy-to-use starting point, but one th...
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK