Noteist
Print out a report of completed tasks in a Todoist project in Markdown.
Features
- Lists completed tasks for a specified project and date range
- Outputs in Markdown format
- Supports sub-tasks and descriptions
Requirements
- Get your Todoist API Token
- Log in to your Todoist account.
- Go to Settings > Integrations > Developer (tab).
- Copy your API token from the "API token" section.
- A Python Interpreter
Install
It's recommended you use UV and either install as a tool
(uv tool install noteist) or run it with uvx noteist. You can also install it with
pip if you prefer.
Usage
Print help:
noteist --help
Print out completed tasks for the Todoist project Work with the default of two weeks:
noteist --project "Work" --token <TOKEN>
Save the project "Work" as the default:
noteist config set project Work
Save the token "example-token" as the default:
noteist config set token example-token
List saved defaults:
noteist config list
Unset a saved default:
noteist config unset project
Specify the time range:
noteist --since 2025-07-01 --until 2025-07-15
Use relative dates, with anything dateparser supports:
noteist --since "-7d" --until "-3d"
Development
To run the script locally while in development.
- Clone the repository.
- Then run the script with:
uv run -m noteist
Formatting Code
To format the codebase using ruff:
just format
License
MIT
Release files for noteist 0.7.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| noteist-0.7.3.tar.gz | 5.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| noteist-0.7.3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 12.6 kB
Release files / noteist-0.7.3.tar.gz
| Download URL | noteist-0.7.3.tar.gz |
|---|---|
| Size | 5.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
aaf2839f6c069cdb69bb073af25fe8260810e4360be6eb364652fe6897874ffb
|
|
BLAKE2b-256 checksum How to use checksums |
cc7d41f2f938c3200bf4944314af70c657c97cb58f7a12705c73b01128ef017b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.11.3 {"installer":{"name":"uv","version":"0.11.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / noteist-0.7.3-py3-none-any.whl
| Download URL | noteist-0.7.3-py3-none-any.whl |
|---|---|
| Size | 7.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
4092a42bf8d1d9853ac5c18dfc4cea908f03974a61d09746f1becff8d2566f8d
|
|
BLAKE2b-256 checksum How to use checksums |
e741d508b2826e7943b0e30c761dac16e0b6975af44d3b91a8fb8c18b8698139
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.11.3 {"installer":{"name":"uv","version":"0.11.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|