Generate a digest of comments that occured since the last checked in date. Useful for including in an email.
Project description
Todoist Project Digest
Todoist doesn't have a way to generate a digest of all recent comments in a project created by a specific user. This makes it challenging to see what changed and what requires your action if you are collaborating with someone on a project.
This is a simple project which generates a digest of all comments by a particular user on a particular project.
This project was also a good excuse to play around and test some functional programming/data manipulation tooling I've been messing with (funcy, funcy-pipe, and whatever).
Usage
Docker
docker pull ghcr.io/iloveitaly/todoist-digest:latest
docker run --env-file .env ghcr.io/iloveitaly/todoist-digest:latest
Want to run a one off execution?
docker run --env-file .env ghcr.io/iloveitaly/todoist-digest:latest todoist-digest --help
Want to inspect the docker container?
docker run -it ghcr.io/iloveitaly/todoist-digest:latest bash
Locally
Run this locally using:
bin/local-digest-html
Or run directly:
poetry run todoist-digest \
--last-synced "2023-12-04T15:52:48Z" \
--target-user user@gmail.com \
--target-project ProjectName
Or, email yourself the digest:
poetry run todoist-digest \
--last-synced $LAST_SYNC \
--target-user $TARGET_USER \
--target-project $TARGET_PROJECT \
--email-auth $EMAIL_AUTH \
--email-to $EMAIL_TO
Development
Docker Build
This repo uses nixpacks for building a Dockerfile. Why? Because I like trying new things.
Until asdf support is built into nixpacks, you'll have to do something like:
export NIXPACKS_POETRY_VERSION=$(asdf-current-version poetry)
export NIXPACKS_PYTHON_VERSION=$(asdf-current-version python)
(asdf-current-version is a function I have in my shell which returns the current version of a tool)
In order to pass the py + poetry versions properly to nixpacks:
nixpacks build . --name todoist-digest --env NIXPACKS_PYTHON_VERSION --env NIXPACKS_POETRY_VERSION --start-cmd bin/cron-digest
Playground
ipython shell with some helpful variables defined:
./playground.py
Run with ipdb
Open up an exception when there's an exception:
ipdb3 $(which todoist-digest) --last-synced 2023-12-14T13:38:25Z ...
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
File details
Details for the file todoist_digest-0.5.0.tar.gz
.
File metadata
- Download URL: todoist_digest-0.5.0.tar.gz
- Upload date:
- Size: 8.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.6.1 CPython/3.11.7 Linux/6.2.0-1019-azure
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1ac0c8a81090802997f921f6baf6acb1f07ec4624eebbeebf3e9029cd1273097 |
|
MD5 | 5a7a5a2cce73123b3ece1c59211ab664 |
|
BLAKE2b-256 | 8b03bd6afa41f617989edb977b41428c8c2211af136a4793a19bb41a24e16f63 |
File details
Details for the file todoist_digest-0.5.0-py3-none-any.whl
.
File metadata
- Download URL: todoist_digest-0.5.0-py3-none-any.whl
- Upload date:
- Size: 9.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.6.1 CPython/3.11.7 Linux/6.2.0-1019-azure
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1573632a2bb0cafe0380ddcbc10f2994e39971d88646380734ffd48a7366b6db |
|
MD5 | 6ceb6769118abae60c69fd15a08cc9c8 |
|
BLAKE2b-256 | a7ccb6a4b2361ee296f12a4654f5043697f6a64819ae2d15e8fc5f7de1631ee0 |