Todoist is a really great todo list keeper, but it's missing one little feature: the ability to have a default time for tasks that have a date.
The script requires Python 3.7 or greater.
- Go to the Todoist App Console
- Create a new app
- Name it whatever you'd like and use
http://localhost:5000
as your app service URL - Set the OAuth Redirect URL to
http://localhost:5000/todoist_auth/redirect
- Note your client ID and client secret because you'll need them later
- Clone this repository and go into the directory.
- Setup your virtual environment (
python -m venv venv
) and source it. - Install the required libraries (
pip install -r requirements.txt
). - Copy the settings template to
settings.py
. - Update your settings file with your specifics.
- Set the environemnt variable
FLASK_APP
totodoist_timealltasks.py
(Win:set NAME = VAL
- Linux/Mac:export NAME = VAL
) - Start the Flask server:
flask run
- Open your browser and go to
http://localhost:5000/todoist_auth/
. It will take you to a Todoist page to authorize your app. - If everything works, you should see "Authorized" and have a new file called
todoist.token
In the same terminal or command prompt from the earlier commands, simply run flask time_all_tasks
.
To be in compliance with Todist's brand guidelines, this is not created by, affiliated with, or supported by Doist.