Skip to main content

Hyperfast Python Template

pypi-image version-image release-date-image license-image jupyter-book-image codecov

Streamlining Python Project Development with a Comprehensive Toolset for Quality, Efficiency, and Maintainability

The Hyperfast Python Template is a powerful and comprehensive solution designed to accelerate the development and maintenance of high-quality Python projects. By incorporating industry best practices and automating key aspects such as dependency management, releases, code formatting, testing, and documentation, this template streamlines the entire development process. It ensures code quality through continuous integration, coverage reporting, linting, and static type-checking while providing seamless support for Conventional Commits and Semantic Versioning. With the Hyperfast Python Template, developers can efficiently create and manage Python projects, focusing on their core functionality while enjoying a robust, well-organized, and maintainable codebase.

Quickstart

There are two ways to use this project:

  • Use [Copier] to create a project to your local machine directly
  • Inject [Hyperfast Python Template] into an existing project

I. Use Copier

  1. Install Copier
    pipx install copier
    
  2. Run
    copier copy --trust gh:entelecheia/hyperfast-python-template path/to/destination
    
  3. Do your work

II. Inject the template

  1. Install Copier
    pipx install copier
    
  2. From the root of your project, run
    copier copy --trust gh:entelecheia/hyperfast-python-template .
    
  3. Do your work

Managing Actions Secrets and Variables in Your Project

When using the HyFI-Template for your project, there are several GitHub Actions secrets and variables that you need to add to ensure proper functioning of the release action and optional JupyterBook deployment.

Adding PYPI_API_TOKEN and TEST_PYPI_API_TOKEN

To automate the release process of your project to PyPI, you need to provide two tokens: PYPI_API_TOKEN and TEST_PYPI_API_TOKEN. These tokens will be used by the GitHub Actions workflow to authenticate with PyPI and TestPyPI, respectively.

  1. Generate an API token for your PyPI account by following the instructions in the official PyPI documentation.
  2. Generate an API token for your TestPyPI account by following the instructions in the official TestPyPI documentation.
  3. In your GitHub repository, go to the "Settings" tab and click on "Secrets" in the left sidebar.
  4. Click the "New repository secret" button.
  5. Add the PYPI_API_TOKEN secret with the value set to the token generated for your PyPI account.
  6. Add the TEST_PYPI_API_TOKEN secret with the value set to the token generated for your TestPyPI account.

By providing these tokens, your project's release action will have the necessary permissions to publish your package to PyPI and TestPyPI.

Optionally Adding CNAME for JupyterBook Deployment

If you plan to deploy the JupyterBook documentation to a custom domain, you'll need to add a CNAME variable to your GitHub repository.

  1. In your GitHub repository, go to the "Settings" tab and click on "Pages" in the left sidebar.
  2. Follow the instructions to configure your custom domain.
  3. In your GitHub repository, go to the "Settings" tab and click on "Repository Variables" in the left sidebar.
  4. Click the "New repository variable" button.
  5. Add a new variable with the key CNAME and set the value to your custom domain (e.g., your-custom-domain.com).

By adding the CNAME variable, the GitHub Pages action in your deploy-docs.yaml workflow will properly configure the deployment to use your custom domain.

With the CNAME repository variable properly configured, your project will be set up to handle JupyterBook deployment to your custom domain effectively.

Changelog

See the CHANGELOG for more information.

Contributing

Contributions are welcome! Please see the contributing guidelines for more information.

License

This project is released under the MIT License.

Metadata

Release files for hyperfast-python-template 0.11.9

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for hyperfast-python-template 0.11.9
File Size Uploaded
hyperfast_python_template-0.11.9.tar.gz 5.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for hyperfast-python-template 0.11.9
File Interpreter ABI Platform
hyperfast_python_template-0.11.9-py3-none-any.whl Python 3 none any Details

Total release size: 10.9 kB

Release files / hyperfast_python_template-0.11.9.tar.gz

Download URL hyperfast_python_template-0.11.9.tar.gz
Size 5.1 kB
Tags Source
SHA-256 checksum
How to use checksums
f6a7cd1d5e9632424f3a433a0d3ddd83e02d5bab014967a90afe9067de66f691
BLAKE2b-256 checksum
How to use checksums
bc355388e5fdfe53fa78bc1c82dbda1861301133642ce7e444be46c244de5b0a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.8.0 pkginfo/1.9.6 readme-renderer/42.0 requests/2.31.0 requests-toolbelt/1.0.0 urllib3/2.0.7 tqdm/4.66.1 importlib-metadata/6.8.0 keyring/24.2.0 rfc3986/2.0.0 colorama/0.4.6 CPython/3.10.12

Release files / hyperfast_python_template-0.11.9-py3-none-any.whl

Download URL hyperfast_python_template-0.11.9-py3-none-any.whl
Size 5.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
bf65219a20dae963bdbd8d13b267c20e381a98b7b4b977187d9cdedde4274730
BLAKE2b-256 checksum
How to use checksums
6256f4025e0123122907761b88826ca1bf2d7c588694e125249770bc635c9eda
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.8.0 pkginfo/1.9.6 readme-renderer/42.0 requests/2.31.0 requests-toolbelt/1.0.0 urllib3/2.0.7 tqdm/4.66.1 importlib-metadata/6.8.0 keyring/24.2.0 rfc3986/2.0.0 colorama/0.4.6 CPython/3.10.12

Release history Release notifications | RSS feed

0.16.3

2 release files

0.16.1

2 release files

0.16.0

2 release files

0.15.3

2 release files

0.15.2

2 release files

0.14.5

2 release files

0.14.4

2 release files

0.14.3

2 release files

0.13.1

2 release files

0.12.1

2 release files

0.12.0

2 release files

This release

0.11.9 This release

2 release files

0.11.8

2 release files

0.11.7

2 release files

0.11.6

2 release files

0.11.4

2 release files

0.11.3

2 release files

0.11.2

2 release files

0.11.1

2 release files

0.11.0

2 release files

0.10.3

2 release files

0.10.2

2 release files

0.10.1

2 release files

0.10.0

2 release files

0.9.0

2 release files

0.8.8

2 release files

0.8.7

2 release files

0.8.6

2 release files

0.8.5

2 release files

0.8.4

2 release files

0.8.3

2 release files

0.8.2

2 release files

0.8.1

2 release files

0.8.0

2 release files

0.7.0

2 release files

0.6.0

2 release files

0.5.2

2 release files

0.5.1

2 release files

0.5.0

2 release files

0.4.9

2 release files

0.4.8

2 release files

0.4.7

2 release files

0.4.6

2 release files

0.4.5

2 release files

0.4.4

2 release files

0.4.3

2 release files

0.4.2

2 release files

0.4.1

2 release files

0.4.0

2 release files

0.3.3

2 release files

0.3.2

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.23

2 release files

0.2.22

2 release files

0.2.21

2 release files

0.2.20

2 release files

0.2.19

2 release files

0.2.18

2 release files

0.2.17

2 release files

0.2.16

2 release files

0.2.15

2 release files

0.2.14

2 release files

0.2.13

2 release files

0.2.12

2 release files

0.2.11

2 release files

0.2.10

2 release files

0.2.9

2 release files

0.2.8

2 release files

0.2.7

2 release files

0.2.6

2 release files

0.2.5

2 release files

0.2.4

2 release files

0.2.3

2 release files

0.2.2

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.9

2 release files

0.1.8

2 release files

0.1.7

2 release files

0.1.6

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page