cornerstone¶
/kɔrˈneːrston/
n. an indispensable and fundamental basis
cornerstone is a state-of-the-art repository setup to start a python project hosted on Github.
Install¶
git clone git@github.com:Kraymer/cornerstone.git YOUR_PROJECT
# git checkout docs
sed -i 's/cornerstone/YOUR_PROJECT/g' **/*py
Features¶
Markdown
README.mdfile used for both pypi and github project homepagesMarkdown documentation hosted by readthedocs
CI/CD automation using Github action :
codecov.ymlupload coverage to Codecovpython-buildlint and run unit testspython-semantic-release.ymlautomatic changelog generation and versioning via Python Semantic Release and one click deployment to Pypi
README.md¶
PyPI.org supports Markdown in long descriptions in place of restructured text since April 2018.
This allows us to use the content of README.md as-is for the Pypi description, except for images having ǹopypi as Alt text that will be discarded (eg see how cornerstore pypi homepage has only two badges from the six original ones).
Configuration¶
Readthedocs alabaster theme¶
Import your project to your readthedocs account and set docs as default branch.
Github CI/CD workflows¶
codecov.yml: import your project to your app.codecov.io/ accountpython-buid.yml: edit python versions and targeted platformspython-semantic-release.yml: add a PYPI_TOKEN secret token to your repository settings as described on packaging.python.org. Configure behaviour by editingsetup.cfg.