Skip to content

Deployment

H9A is an installable Python package, so "deployment" means installing it with pip on the target machine, or running it in a container. The project also ships automated release pipelines that publish new versions for you.

Option 1: Install from PyPI (all platforms)

python -m pip install h9a
h9a

For screenshot support, install the extra:

python -m pip install "h9a[screenshot]"

Option 2: Install from the repository

git clone https://github.com/rkriad585/h9a.git
cd h9a
python -m pip install .
h9a

Option 3: Run directly without installing

Install the runtime dependencies and run the package from the repository root:

python -m pip install rich pyfiglet
python -m h9a

Option 4: Docker

The Dockerfile installs the package into a python:3-slim image:

docker build -t h9a .
docker run --rm h9a

A prebuilt image is published to GitHub Container Registry:

docker run --rm ghcr.io/rkriad585/h9a

Note: The image installs the core package only; screenshot generation requires Pillow, which is not installed in the image.

Automated pipelines

GitHub Actions runs automatically when code is pushed to main:

  • Documentation (.github/workflows/docs.yml) — builds the MkDocs site with --strict and deploys it to GitHub Pages at https://rkriad585.github.io/h9a.
  • Container (.github/workflows/publish-container.yml) — builds the Docker image and pushes it to ghcr.io/rkriad585/h9a, tagged with the branch, semantic version (v* tags), and commit SHA.

Releases are published to PyPI (h9a) from this repository; install the latest version with python -m pip install h9a.


Back to Home