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 for dependency management if required for this project.

Setup

Follow these steps to set up the project environment:

  1. Clone the repository:

    git clone https://github.com/mab0189/cookiecutter-python
    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.0.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.0-py3-none-any.whl (4.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: my_package_byteorium-0.1.0.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.0.tar.gz
Algorithm Hash digest
SHA256 c6408be5ceae775c939695c031353eda13d5382ad8a362333b68fa20abb07c55
MD5 b916c6f2e73be8fccd0341c2f51909a3
BLAKE2b-256 dfae8abb6c12059ee9a1453b2b9bbf9caff4923d180487679a6091f22cfdb93f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: my_package_byteorium-0.1.0-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.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d6d09ac9cacb9a6e1fb8ab21d9376eb94f4fc8657d20151b8e903e746ed1eee9
MD5 eb6e694475576b190acdf221d88aa44d
BLAKE2b-256 07bb07e055f49a3369e98032cf6ece980fb7b1dbd9f7120ee80704c250bc144a

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