/bookish-enigma

My first test of the automated project creation using "Python-project-template" from github.

Primary LanguageMakefileThe UnlicenseUnlicense

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.

  1. If you want codecov Reports and Automatic Release to PyPI
    On the new repository settings->secrets add your PIPY_API_TOKEN and CODECOV_TOKEN (get the tokens on respective websites)

What is included on this 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 run make 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 <bookish_enigma> or $ bookish_enigma 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.


bookish_enigma

codecov CI

Awesome bookish_enigma created by conradstorz

Install it from PyPI

pip install bookish_enigma

Usage

from bookish_enigma import BaseClass
from bookish_enigma import base_function

BaseClass().base_method()
base_function()
$ python -m bookish_enigma
#or
$ bookish_enigma

Development

Read the CONTRIBUTING.md file.