PROJECT UNDER DEVELOPMENT
NOT EVEN IN AN ALPHA VERSION NOW :)
This unofficial Todoist browser extension allows its user to add its current web site's URL as a new Task in his Todoist Inbox, just by clicking on a single button. It completes the official Todoist browser extension, allowing the same use case but with a 4-clicks process from the browser header, or a 2-clicks process using right-click menu on page.
For the moment, this project will only provide this single and quite simple functionnality.
Disclaimer: initially, this project used a Java API to proxy Todoist services, using Google Cloud AppEngine. However, it is currently switching to a Python version of it, using Google Cloud Functions. All documentation is migrating too, and explains for the moment both versions. Until Python version is fully fuctional and linked to the Browser Extension (not the case for now), Java API will be used and Java documentation is the right one.
This extension project is now under developement. Contributions are still difficult for the moment. However, you will be able to contribute soon !
- By translating texts other than in English and French,
- By reporting issues, and even fixing them :)
Basically, the extension has the following process, fired when the user clicks on the extension button :
- Call the API to retrieve Todoist Client ID required in following process
- Try to access the Todoist Access Token stored in
Browser Storage
- If no Access Token is found, launch Todoist Authorization Flow:
- Prompt the Todoist Authentication Form, using Browser Identity API,
- Get a valid OAuth Code, once user has authenticated
- Call our
Todoist Proxy API
to transform this OAuth Code in a valid Access Token. - Store the Access Token in
Browser Storage
, for a future reuse
- Launch the Task Add Flow:
- Get active tab, to retrieve its URL
- Call Todoist Rest API to add the task
- If task add is a success, confirm the user the task has been added, using Browser Notification API
- If task add has failed due to Authorization reasons, revoke the Access Token and go to
Step 3
See Project Local Set Up Documentation.
- Todoist REST API Documentation, for Task Add Service
- Todoist Sync API Documentation, for Todoist Authorization Flow, based on OAuth protocol
- Todoist Brand Usage Limits
- Browser Extension Mozilla Documentation
- Browser Notifications API
- Browser Storage API
- Browser Identity API
- Browser Identity API Samples