How to synch GitHub with Todoist
If you are a developer, is probable that you know and use GitHub on a daily base.
If you are an organized developer, is very probable that you use GitHub projects with an Automatic Kanban template, a basic Kanban template or a custom template.
If you are an organized person, it could be that you use Todoist to organize your personal and working tasks.
If you see yourself in these 3 descriptions, we probably share the same approach and we both need a sort of automatic synchronization between GitHub projects and Todoist projects… For this reason, I spent some weeks working on todoDEV: a small (and free) web app that allows you to sync your GitHub repository projects with your Todoist projects.

todoDEV: where GitHub meet Todoist
The concept of the app is very simple and I tried to express that creating a 1-page-app.
After the sign-up process, the app will ask you to link both your Todoist and your GitHub account. At this point, the app will load all your GitHub repository projects and all your Todoist projects in real-time.
The user experience is very simple when you found the GitHub project that you want to sync, select the relative Todoist project and click on the “Connect” button.
You have done! Every time that you create, move or close a GitHub’s card/issue, todoDEV will immediately act on your Todoist project emulating what you have done on GitHub.
In this short video, you can see todoDEV in action! (I know… Even the video it’s so ugly :P )
Synch Options
Every time that you decide to synch a project using todoDEV you will be able to access to some options that you can customise with a simple click! In this early stage of development, you can customize these 4 options:
- Check task in Todoist when the GitHub card/issue is moved in “Done” column (active by default)
- Restore task in Todoist when the GitHub card/issue is moved outside “Done” column (active by default)
- Move card in “Done” inside GitHub when a Todoist task is checked (inactive by default)
- Close issue inside GitHub when a Todoist task is checked (inactive by default)

Development info
The app uses Symfony for backend and ReactJs for frontend. It doesn’t store any personal information (except for email address needed for login).
The link to GitHub and Todoist is made using the official and secure OAuth Authorizations API, so, we don’t store any related pieces of information like Username and passwords.
Because we have chosen to not store any personal data (card/issue/tasks contents, etc), the app places an ID in every generated Todoist task. In this way, the app can understand the tasks correlation without storing any data on the database.

How you can support todoDEV?
At this moment, this is a personal side-project. That’s mean that I work on todoDEV alone and that I use personal economical/time resources to keep this project alive.
You can support me and todoDEV in a lot of ways:
- Financial support: support todoDEV on Ko-Fi
- Share some feedback with me: Contact me
- Contribute to the project development: Contact me
- Talk about todoDEV to your friends and your followers