Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/simenandre/todoist-action
Synchronize Github tasks with Todoist :ballot_box_with_check:
https://github.com/simenandre/todoist-action
github todo todoapp todoist
Last synced: 20 days ago
JSON representation
Synchronize Github tasks with Todoist :ballot_box_with_check:
- Host: GitHub
- URL: https://github.com/simenandre/todoist-action
- Owner: simenandre
- License: apache-2.0
- Created: 2021-02-16T08:08:20.000Z (almost 4 years ago)
- Default Branch: main
- Last Pushed: 2024-05-10T02:44:30.000Z (6 months ago)
- Last Synced: 2024-10-04T12:45:41.887Z (about 2 months ago)
- Topics: github, todo, todoapp, todoist
- Language: TypeScript
- Homepage:
- Size: 6.86 MB
- Stars: 30
- Watchers: 2
- Forks: 2
- Open Issues: 28
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
- jimsghstars - simenandre/todoist-action - Synchronize Github tasks with Todoist :ballot_box_with_check: (TypeScript)
README
Synchronize Github tasks to Todoist with Github Actions![![lifecycle](https://img.shields.io/badge/lifecycle-experimental-orange.svg)](https://www.tidyverse.org/lifecycle/#experimental)
**Do you love getting Karma points but feel adding all the tasks into Todoist
isn't worth it? Well, you're in luck. This Github Action synchronizes your
Github issues and tasks so you can get to the next karma level easy!**Tools like Todoist is excellent for productivity, and now for developers too.
Being an active contributor to Github Actions, I feel an integration between
Github and Todoist is another ideal use-case. Run it periodically to get the
latest issues added to your todo list!## Example
You can see a [running example in this repo][workflows].
```yml
- name: Sync issues
id: sync
uses: cobraz/todoist-action@v1
with:
github-token: ${{ secrets.GH_TOKEN }}
todoist-token: ${{ secrets.TODOIST_TOKEN }}
query:
updated:>2020-06-01 archived:false sort:updated-desc assignee:cobraz
-label:backlog
sync-file-name: ./sync.json
```## Configuration
The action can be configured with the following arguments:
- `github-token` (required) We need a **personal Github token** in order to use
the Github API to get issues.- `todoist-token` (required) In order to make authorized calls to the Todoist
Sync API, we need a Todoist token. You can obtain your personal API token from
the [integrations settings](https://todoist.com/prefs/integrations) for your
account.- `query` (required) The search for which you want issues / pull requests.
You'll have to use [Githubs search syntax][search-syntax].- `sync-file-name` (optional) Where to retrieve/store the synchronization data,
read more about that below.- `sync-content` (optional) Input for synchronization data, read more about that
below.## Synchronization Data
This Github Action needs a state, which you are free to choose which. You can
find an example in my [workflows][], where I use Github Action cache to store the
synchronization data.You can either use file storage or use Github Action input/output to communicate
with the Action. `sync-content` is an output of this Github Action; it contains
a JSON dump that you can store somewhere. Just make sure you send that same JSON
dump back as an input (`sync-content`).If you want to use Amazon S3 or Google Storage, you can download and upload a
file (defined by `sync-file-name`).## Known issues
This Github Action is still experimental; most of the synchronization operation
works (and you can see examples of it [used here][actions]). However, if you
complete a task in Todoist – the Github issue **will not** be closed. The action
also does not synchronize more issues than what is returned by the API (it does
not paginate).## Contribute
Feel free to open an issue or pull request. The Todoist Action is still
experimental, help us get is stable! Feedback is much appreciated!## Thanks
The awesome logo was made by [@AnneMatilde](https://github.com/annematilde)! 🙏
**Notice**: This is not created by or associated with Todoist in any way.
[workflows]: https://github.com/cobraz/todoist-action/blob/main/.github/workflows/schedule.yaml
[actions]: https://github.com/cobraz/todoist-action/actions
[search-syntax]: https://docs.github.com/en/github/searching-for-information-on-github/searching-issues-and-pull-requests