Python project template for building robust, modern, and clean Python projects.
Project description
Python project template byteorium
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:
rufffor formatting, linting and coding standards.pytestfor testing.mypyfor typechecking.
- Documentation: Sphinx setup with RTD theme and
myst-parserfor Markdown support. - Easy usage: Pre-configured
toxworkflow 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:
-
Clone the repository:
git clone https://github.com/mab0189/python_project_template_byteorium.git cd python_project_template_byteorium
-
Set up a virtual environment with
poetrywith 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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file my_package_byteorium-0.1.6.tar.gz.
File metadata
- Download URL: my_package_byteorium-0.1.6.tar.gz
- Upload date:
- Size: 3.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.2.1 CPython/3.12.11 Linux/6.11.0-1018-azure
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
28d5264b303cfa274743b6ab478345ff427bb9b93707eaa22ef7f78b164c8677
|
|
| MD5 |
b3f2333bced52a587dab68ec8c78ac51
|
|
| BLAKE2b-256 |
6edfaa26a3a5914be54e6cb0895663c616f4fce6500090955eab8c27351a77d9
|
File details
Details for the file my_package_byteorium-0.1.6-py3-none-any.whl.
File metadata
- Download URL: my_package_byteorium-0.1.6-py3-none-any.whl
- Upload date:
- Size: 5.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.2.1 CPython/3.12.11 Linux/6.11.0-1018-azure
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
983291d16f16c22ae3466729bb0e963082e95fb61b79317faa5f1a2e9fb8dfb0
|
|
| MD5 |
c5a3b2f98df82ae642489717b68f57ad
|
|
| BLAKE2b-256 |
ae6774b50585b8b42c831ad4d950247754d955deaf087348e17f47f3107d3206
|