Skip to main content

Asynchronous Python library for the Toggl API.

Project description

lib-toggl

lib-toggl is a Python library for interacting with the Toggl API. It exists because I figured it'd be easier to start fresh instead of update TogglPy to use the new v9 API and the other changes needed for better Home Assistant integration.

Note lib-toggl is currently in a very early stage of development and is meant primarily for use in with ha-toggl-track. There are other, better Python based API clients for toggl track. You should probably use one of those instead.

Seriously, the number of #TODO: comments in this code is ridiculous.

As this library is mostly meant for use with Home Assistant, it's written to be compatible with Python 3.11+ and is mostly async based with strong-ish typing. It is absolutely not meant to be a complete implementation of the Toggl API; it does just enough forha-toggl-track and that's about it.

Using

More formal docs to be added. Tests are also needed!

For now, see the scripts directory for a quick example of how to use the library.

Dev

I use VSCode for development so there's a .vscode directory with some settings that I use. Most of the extensions and configuration directives there should be easy to port to your preferred editor / IDE as needed.

Pretty simple setup; it's all poetry driven...

Create a virtual environment for the project.

 poetry env use -- python3
Creating virtualenv togglpy in /home/karl/projects/ha-dev/TogglPy/.venv
Using virtualenv: /home/karl/projects/ha-dev/TogglPy/.venv

Use autoenv to automatically activate the virtual environment when you enter the project directory.

 cd TogglPy
Switching virtualenv: .venv [🐍Python 3.11.6] which python
/home/karl/projects/ha-dev/TogglPy/.venv/bin/python

Don't forget to install pre-commit hooks.

pre-commit

Assuming you've installed the pre-commit tool, just run the following to install the git hooks:

 pre-commit install
pre-commit installed at .git/hooks/pre-commit

doctoc

The table of contents in readme.md is updated with doctoc

 docker run --rm -v "$(pwd)":/app peterdavehello/npm-doctoc doctoc /app/README.md
<...>

TODO

  • pre-commit hooks
  • Tests
  • CI/CD/GHA automation for testing and pypi release
  • Devcontainers (for VSCode) so the dev environment is more portable / easier to set up

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

lib_toggl-0.1.5.tar.gz (27.7 kB view hashes)

Uploaded Source

Built Distribution

lib_toggl-0.1.5-py3-none-any.whl (29.6 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page