Skip to content

benjypng/logseq-todoist-plugin

Repository files navigation

logseq-todoist-plugin

Version Downloads License

Sync, send and receive tasks to/from Todoist.


✨ Features

  • Retrieve tasks from Todoist: Retrieve tasks from a preset project, today's tasks or based on a custom filter.
  • Send tasks to Todoist: Send tasks to a preset project, or customise where to send it to..
  • Sync tasks with Todoist (beta): Keep tasks in Logseq and Todoist in sync.

📸 Screenshots / Demo

Sync

todoist-sync-720.mov

⚙️ Installation

  1. Open Logseq.
  2. Go to the Marketplace (Plugins > Marketplace).
  3. Search for logseq-todoist-plugin.
  4. Click Install.

🛠 Usage & Settings

API Token

  1. Go to https://developer.todoist.com/appconsole.html and create an App. You will need to create an App (give it any name you like), and you will be able to obtain a test token. Note down the test token as this is the API Token that you will need in Step 3.
  2. In the plugin settings, enter your API token that you obtained in Step 1 as well.

Retrieving Tasks

You can retrieve tasks in 3 ways:

  • Retrieving tasks from a default project (indicated in plugin settings);
  • Retrieving today's tasks, regardless of the project; and
  • Retrieving tasks based on a custom filter. Key in the desired filter in any block, and type /Todoist: Retrieve Custom Filter

Sending Tasks

You can send tasks in 2 ways:

  • If you set a default project to send tasks to, just trigger /Todoist: Send Task on the block containing the task.
  • If no default project is indicated, there will be a popup to specify the necessary parameters.
  • You can also choose /Todoist: Send Task (manual) to trigger the popup.

Syncing Tasks (only for DB graphs)

Note: Only task status (Todo, Done) is supported. Other task properties are not supported. Only tasks in the Inbox section of Todoist are synced; project-level tasks are not synced. Logseq tasks are synced to the Inbox only as well. Synced tasks from Todoist are added to today's journal page. You can move them to other blocks, but the same block UUID must be used, by using the Cut command from the block context menu.

  1. Trigger the command palette (Mod+Shift+p) and use the command Start Todoist Sync Crobjob. You can also trigger a manual sync if you don't want it to be automated by using Trigger Todoist Sync.
  2. To stop the automated sync, use Stop Todoist Sync Crobjob.
  3. To sync a task, use the tag #TodoistTask instead of #Task.

☕️ Support

If you enjoy this plugin, please consider supporting the development!

Sponsor on Github Buy Me a Coffee

🤝 Contributing

Issues are welcome. If you find a bug, please open an issue. Pull requests are not accepted at the moment as I am not able to commit to reviewing them in a timely fashion.

❤️ Credits

  • Todoist

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Sponsor this project

Packages

 
 
 

Contributors

Languages