Skip to main content

Python project template for building robust, modern, and clean Python projects.

Project description

Python project template byteorium

Create Release

Python project template for building robust, modern, and clean Python projects according to my personal preferences. Includes thorough code quality checks and developer-friendly tools.


Table of contents


Features

  • Dependency management: Easy dependency management with poetry.
  • Code quality tools:
    • ruff for formatting, linting and coding standards.
    • pytest for testing.
    • mypy for typechecking.
  • Documentation: Sphinx setup with RTD theme and myst-parser for Markdown support.
  • Easy usage: Pre-configured tox workflow for a streamlined development experience.
  • Best Practices: Adherence to PEP 8 and other modern Python standards.

Requirements

Ensure you have the following installed:

  • Python 3.12
  • Poetry is required for the dependency management

Setup

Follow these steps to set up the project environment:

  1. Clone the repository:

    git clone https://github.com/mab0189/python_project_template_byteorium.git
    cd cookiecutter-python
    
  2. Set up a virtual environment with poetry with all dependencies:

    poetry install
    

Usage

Tox is used to manage and automate testing, linting, formatting, and more. Below are the available environments configured in the tox.ini:

Environment Description Command to Run
py312 Test code on Python 3.12 tox -e py312
isort Check and sort imports tox -e isort
format Auto-format code with ruff tox -e format
lint Lint code with ruff tox -e lint
typecheck Perform static type checking with mypy tox -e typecheck
test Run tests with pytest and poetry managed dependencies tox -e test
docs Build Sphinx HTML documentation tox -e docs

Contributing

Contributions are welcome but this project is developed according to my personal preferences.


License

This project is licensed under the MIT License.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

my_package_byteorium-0.1.2.tar.gz (3.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

my_package_byteorium-0.1.2-py3-none-any.whl (4.9 kB view details)

Uploaded Python 3

File details

Details for the file my_package_byteorium-0.1.2.tar.gz.

File metadata

  • Download URL: my_package_byteorium-0.1.2.tar.gz
  • Upload date:
  • Size: 3.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.3 CPython/3.12.11 Linux/6.11.0-1018-azure

File hashes

Hashes for my_package_byteorium-0.1.2.tar.gz
Algorithm Hash digest
SHA256 90d16dd220e87bf2e44eaee023750e11c6ba1a130df421f3612d34846598940a
MD5 613db18aa970d672217dc2d0c1182fc1
BLAKE2b-256 21d00c046d38dbee0e51f906ddc381525f984df33f0c9b0b0cae0d7e27fd639b

See more details on using hashes here.

File details

Details for the file my_package_byteorium-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: my_package_byteorium-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 4.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.3 CPython/3.12.11 Linux/6.11.0-1018-azure

File hashes

Hashes for my_package_byteorium-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 52d45c834e2b16913c4c940847d59a8b47fa6e7fa960c9707b9b4c6a193a6684
MD5 8ecadb5a91711c28c3460cd3c7ea48ab
BLAKE2b-256 351c99a88344570f78279dec315864ee3bfc2c83906eedf6ff1f6754e5f1fd36

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page