A GitHub Template Repository for HyFI-based Projects
Project description
HyFI-Template: A Template for HyFI-based Projects
A GitHub Template Repository for HyFI-based Projects
- Documentation: https://entelecheia.github.io/hyfi-template
- GitHub: https://github.com/entelecheia/hyfi-template
- PyPI: https://pypi.org/project/hyfi-template
HyFI-Template is a ready-to-use GitHub template repository designed to streamline the process of initializing new projects based on HyFI, a robust framework for building interfaces for Python applications. HyFI leverages the power of the Hydra configuration system and the Pydantic data validation library, offering a comprehensive set of tools to create flexible and adaptable interfaces for various Python projects.
Features
HyFI-Template provides an ideal starting point for developers looking to build projects using the HyFI framework, with key features including:
-
Pre-configured structure: The template repository comes with a pre-defined project structure, ensuring a consistent and organized layout for HyFI-based applications.
-
Quick project initialization: With the
make init-projectcommand, developers can easily initialize a new project, automatically setting up the necessary files, directories, and configurations. -
Hydra integration: The template repository is built around the Hydra configuration system, providing a flexible and powerful foundation for managing configurations in HyFI-based projects.
-
Pydantic integration: HyFI-Template incorporates the Pydantic data validation library, allowing developers to easily define and validate data structures for their application interfaces.
-
Best practices: The template repository follows industry best practices for Python project organization and structure, ensuring that developers have a solid starting point for building high-quality applications.
-
Customizable: Developers can easily customize the template repository to suit their specific requirements and preferences, tailoring it to the needs of their projects.
-
Documentation: The template repository includes clear instructions and guidelines for getting started with a HyFI-based project, helping developers quickly familiarize themselves with the framework and its features.
Getting Started
To begin using HyFI-Template for your project, simply follow these steps:
- Click the "Use this template" button on the HyFI-Template GitHub repository to create a new repository based on the template.
- Clone the newly created repository to your local machine.
- Run
make init-projectto initialize the project with the necessary files and configurations. - Follow the provided documentation and guidelines to start building your HyFI-based application.
By using HyFI-Template as the foundation for your project, you'll be well on your way to creating powerful and adaptable interfaces for your Python applications.
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.
- Generate an API token for your PyPI account by following the instructions in the official PyPI documentation.
- Generate an API token for your TestPyPI account by following the instructions in the official TestPyPI documentation.
- In your GitHub repository, go to the "Settings" tab and click on "Secrets" in the left sidebar.
- Click the "New repository secret" button.
- Add the
PYPI_API_TOKENsecret with the value set to the token generated for your PyPI account. - Add the
TEST_PYPI_API_TOKENsecret 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.
- In your GitHub repository, go to the "Settings" tab and click on "Pages" in the left sidebar.
- Follow the instructions to configure your custom domain.
- In your GitHub repository, go to the "Settings" tab and click on "Repository Variables" in the left sidebar.
- Click the "New repository variable" button.
- Add a new variable with the key
CNAMEand 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.
Project details
Release history Release notifications | RSS feed
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 hyfi_template-0.1.5.tar.gz.
File metadata
- Download URL: hyfi_template-0.1.5.tar.gz
- Upload date:
- Size: 10.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.8.0 pkginfo/1.9.6 readme-renderer/37.3 requests/2.28.2 requests-toolbelt/0.10.1 urllib3/1.26.15 tqdm/4.65.0 importlib-metadata/6.5.0 keyring/23.13.1 rfc3986/2.0.0 colorama/0.4.6 CPython/3.10.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1afe6c99f786033139a29b9355df301012e7c6321efcaf0c07dfc6c7f70a7df4
|
|
| MD5 |
5211196cb1722f19cd1b2a4ea6a83b89
|
|
| BLAKE2b-256 |
ea7d3abbe3e0218621b943e505c465d2084a2baf494df9c84279dc9e9a1407fe
|
File details
Details for the file hyfi_template-0.1.5-py3-none-any.whl.
File metadata
- Download URL: hyfi_template-0.1.5-py3-none-any.whl
- Upload date:
- Size: 12.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.8.0 pkginfo/1.9.6 readme-renderer/37.3 requests/2.28.2 requests-toolbelt/0.10.1 urllib3/1.26.15 tqdm/4.65.0 importlib-metadata/6.5.0 keyring/23.13.1 rfc3986/2.0.0 colorama/0.4.6 CPython/3.10.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
24c3fbb402b27d71935bf1d52baed058d1bcdfe627ff02d4fe4ac5aff1f58b88
|
|
| MD5 |
b9e6036464606e77f69835274acf6294
|
|
| BLAKE2b-256 |
416d7f8a04902b78334417f2a976ab884f18d8fe3ac2dccc41860ef027634d4c
|