GiulioRossetti / Python-Project-Template

Minimal template for a Python library project

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Python Project Template

SBD++ Black

This repository contains a simple template to exemplify: how to structure a python project and leverage GitHub Actions to automatically build and publish it as a python package (to PyPI and Conda).

The template project describes a simple Python package containing an object class, an object container ad a few functions to sort them and convert from/to JSON.

The template comes with:

  • a few GitHub Actions to automatically build and publish the package to PyPI (and Conda) when a new release is created (or on demand);
  • a GitHub Action to check the code quality using CodeQL;
  • a GitHub Action to check compliance with Black code style;
  • a few tests to exemplify the use of pytest;
  • a minimal sphinx documentation to exemplify the use of sphinx and readthedocs;
  • a minimal configuration files to exemplify the use of gitignore and coveragerc;
  • a minimal setup.py to exemplify the use of setuptools.

Wiki

To learn more about the project (and for a crash course on the listed topics), please check the dedicated wiki.

License

This project is licensed under the terms of the BSD-2-Clause license.

Acknowledgements

This repository was developed within the SoBigData++ H2020 project training activities (WP4) to support "Social Mining and Big Data resources Integration" (WP8).

Contact(s)

Giulio Rossetti - CNR-ISTI

Twitter: @giuliorossetti

Mastodon: @giuliorossetti@mastodon.uno

About

Minimal template for a Python library project

License:BSD 2-Clause "Simplified" License


Languages

Language:Python 99.0%Language:Shell 1.0%