A Textual App that allows you to interact with your Harness account.
- Python 3.9 or higher
- Pipx (optional, but recommended)
The recommended way to install the app is to use pipx. This will install the app in an isolated environment and make it available globally.
pipx install harness-tui
You can also install the app using pip. This will install the app in the user's environment.
# Optionally create a virtual environment for the tool
# python -m venv /opt/harness-tui/.venv
# source /opt/harness-tui/.venv/bin/activate
pip install harness-tui
# echo "export PATH=\$PATH:/opt/harness-tui/.venv/bin" >> ~/.bashrc
- Clone the repository
- Run
make install-dev
to create a virtual environment and install the dependencies - Run
source .venv/bin/activate
to activate the virtual environment
As an alternative to manually activating the virtual environment, you can use direnv. To do so, follow these steps:
- Install direnv:
brew install direnv
- Add the following line to your shell configuration file (e.g.
~/.bashrc
,~/.zshrc
):eval "$(direnv hook bash)"
- Create a
.envrc
file in the project root with the following content:
export VIRTUAL_ENV=.venv
dotenv
layout python
- Run
touch .env
to create the.env
file - Run
direnv allow
to allow the.envrc
file
Now the virtual environment will be activated automatically when you cd
into the project directory. Furthermore all environment variables defined in the .env
file will be loaded.
Refer the textual docs and the harness API docs for most of the information we need to develop the app.
To run the app, you can use the make run
command. This will start the app in the terminal.
Alternatively, just run the app directly:
python src/harness_tui/app.py
If the requirements file has been updated, you can run make install-dev
to update the dependencies in the virtual environment.
We will graduate the project from a requirements txt managed project to a poetry managed project with a pyproject.toml that will allow us to publish the project to PyPi for distribution.