harvest-cli: Prettier Aliases
harvest-cli: Tweaks to time entry printing
harvest-cli: Added colourisation options
A CLI tool for interacting with Harvest, written in Python. It does not implement the entire API spec, just some basics.
npm
. I don't like installing entire ecosystems just for one app. If you don't mind this, or you already have npm
installed for other reasons then I guarantee that hrvst-cli
is more feature-complete and better written.$XDG_CONFIG_HOME
and defaults to ~/.config/harvest-cli/config.json
config
command to set it up automatically. oAuth2 is not supported and likely won't be in the future, because this CLI tool is mostly designed for personal use and I prefer to use personal access tokens; sorry! I am open to receiving contributions for this though, with the caveat that it must only use dependencies available in the Debian repos (not PyPi!)Installation is via make
, which will copy the CLI script to ~/.local/bin/harvest-cli
as an executable, and copy the supporting API wrapper class and associated files to ~/.local/lib/python3.11/site-packages/getharvest_api_wrapper
.
make install
installsmake uninstall
removes the files that were installedIn the future, I am intending to add functionality to the Makefile to support building a .deb
package. This is so that, if you prefer, you can use apt
to install/manage it as a package in your system.
click
json
os
requests
sys
I have deliberately designed it so that I can use libraries which are in the Debian repos rather than relying on PyPi packages. I assume that the script will still work if you install the libraries via pip
or if you're on another distro.
If you are on Debian or a derivative and want the system package manager to manage the dependencies for you: run the following:
sudo apt install python3-click
The other dependencies usually come with Debian's python distribution.
This is pretty much a personal tool which I've designed for my own amusement and use, and to satisfy my own stubbornness around not installing npm
just to run a single CLI application. I am not expecting any contributions. However, if this has resonated with you and you're keen to contribute then I am open to the following contributions: