Obsidian Things3 Sync

by royx
5
4
3
2
1
Score: 68/100

Description

Category: Productivity Tools

The Obsidian Things3 Sync plugin allows seamless synchronization of todos, tags, and dates between Obsidian and Things3. It works cross-platform on macOS and iOS, and supports multiple languages for creating todos. Users can easily create or toggle todos in Things3 directly from Obsidian, with tag support tied to Things3's existing tags. Dates in Obsidian notes are also transferred to Things3. Additionally, each todo created in Things3 includes a backlink to the corresponding Obsidian note.

Reviews

No reviews yet.

Stats

105
stars
16,767
downloads
12
forks
1,413
days
26
days
26
days
4
total PRs
0
open PRs
0
closed PRs
4
merged PRs
24
total issues
0
open issues
24
closed issues
15
commits

Latest Version

a month ago

Changelog

Fixes the Obsidian community directory automated review failures reported in #27, so the plugin stays listed after the October 30th, 2026 cutoff. The official scanner (eslint-plugin-obsidianmd) now reports 0 errors (was 23).

Fixed

  • Removed the settings-tab heading that repeated the plugin name.
  • minAppVersion raised to 1.4.4 — the release that introduced FileManager.processFrontMatter, which Advanced URI mode relies on.
  • Replaced the banned builtin-modules dependency with node:module.
  • Fixed useless regex escapes and unchecked any reads from frontmatter and loadData().
  • manifest.json authorUrl is now a real URL.

Changed

  • Dropped a private API. Toggle Things todo no longer calls the undocumented app.commands.executeCommandById('editor:toggle-checklist-status'); it flips the checkbox itself. Behaviour is unchanged, now covered by tests.
  • Command names use sentence case: Create Things todo, Toggle Things todo, Create Things todo from note.

Internal

  • Migrated to ESLint 9 flat config with eslint-plugin-obsidianmd, plus an npm run lint script, so the directory's scan can be run locally.
  • Updated the Obsidian typings and TypeScript; retargeted tsconfig at ES2018 / ["DOM", "ES2020"].

Upgrade note: this release requires Obsidian 1.4.4 or later.

Full Changelog: https://github.com/royxue/obsidian-things3-sync/compare/1.4.2...1.4.3

README file from

Github

Things3 Sync

A cross-platform Obsidian plugin for syncing todos (as well as tags, dates) between Obsidian and Things3 (with multi-language support).

Features

  • Cross-Platform: Works on both macOS and iOS
  • Multiple Languages: Use any language when creating todos
  • Todo Tags: You can enter tags after your todo text, or via the default tags in the settings
  • Date Capture: If the Obsidian note includes a date, it will be included when creating the todo in Things3.
  • Permanent Links: Optionally link todos via the Advanced URI plugin using a uid stored in the note's frontmatter (field configurable via UID frontmatter field, default id), so backlinks survive renames, moves, and duplicate note names (enable Advanced URI mode in the settings).

How It Works (and What It Doesn't)

This plugin is one-way: you push changes from Obsidian to Things3. Things3's URL scheme doesn't allow listening for changes, so:

  • ✅ Creating a todo and toggling its status are triggered from Obsidian, per line.
  • ✅ Toggling status updates both Obsidian and Things3.
  • ❌ Completing or editing a task in Things3 does not update Obsidian — there is no automatic sync back.
  • ℹ️ Only the title, tags, and done/not-done state are synced. Tags must already exist in Things3 (see the note under Creating A Todo).
  • ℹ️ Creating a Todo from a Note adds a backlink to your note inside the Things3 todo, but does not modify the Obsidian note itself.

Usage

Creating A Todo

create

  • Select the line of the todo

  • Using cmd + p and run the Things3 Sync: Create Todo

  • Note: The tags feature currently only supports tags that already exist in Things3. To add a new tag, you'll need to first create it in Things3, and then you will be able to use it in this plugin.

Toggling a Todo's Status

  • Select the line of the todo

  • Using cmd + P and run the Things3 Sync: Toggle Todo

  • The status of the todo will be toggled in both Obsidian and Things3

Pro Tip: This feature can be assigned a hotkey for faster, more convenient toggling.

Creating a Todo from a Note

You can create a Things3 todo from an Obsidian note. This plugin will automatically include a backlink to the Obisidian note in the todo in Things3

Roadmap

  • Multiple Markdown elements support.

  • Permanent URL support.

  • Better tags support.

  • Better toggle trigger method. Not (currently) possible due to a limitation in the Things3 API

  • Multi-line support. Not (currently) possible due to a communication limitation between Things3 and Obsidian

  • Obsidian Note to Things3 Todo

Security

This plugin requires an authentication token from Things3 in order to sync data between Obsidian and Things3. That auth token will be stored in plain-text inside your Obsidian vault's plugin folder (e.g., ./obsidian/plugins/obsidian-things3-sync). As a result, you should be cautious when syncing or sharing the settings for this plugin.

Feature Requests/Feedback

Both feature requests and feedback are welcome. Please feel free to submit an issue for either ;)

Thanks a lot.

Attribution

The folliwng repositories offered great help during the development of this plugin:

Buy me a coffee

Similar Plugins

info
• Similar plugins are suggested based on the common tags between the plugins.