Apple Reminders Plus
approvedby zakin
View and manage Apple Reminders from a sidebar panel. macOS only. - This plugin has not been manually reviewed by Obsidian staff.
Apple Reminders Plus for Obsidian
View and manage your Apple Reminders from a sidebar panel in Obsidian.
macOS only. Nothing is sent over the network — the plugin talks to the Reminders app directly through Apple's EventKit framework, entirely on your machine.
Features
- Sidebar panel — see one Reminders list at a time, switch via the dropdown
- Search — filter the current list by name or notes
- Sort — Default, A → Z, Z → A, or Due date, from the sort icon next to search
- Add — type a name and press Enter (or click Add) to create a reminder
- Complete — check a reminder off; it's removed from the list immediately
- Delete — hover a reminder to reveal the delete button, or swipe it with a trackpad, like a native swipe-to-delete list
- Priority & due dates — high/medium priority reminders are marked (
!!/!), overdue reminders are highlighted - Settings — choose which lists show up in the panel, pick a default list to load first, and set list order (same as Apple Reminders, or alphabetical)
Installation
From the Community Plugins browser
Once this plugin is available in Obsidian's Community Plugins directory:
- Open Settings → Community plugins → Browse
- Search for "Apple Reminders Plus"
- Install and enable it
Manual installation
- From the latest release, download
main.js,manifest.json,styles.css, andreminders-cli-macos-universal.zip - Unzip
reminders-cli-macos-universal.zip— it contains abin/reminders-cliexecutable - Copy everything into
<your-vault>/.obsidian/plugins/apple-reminders-plus/, so the folder looks like:<your-vault>/.obsidian/plugins/apple-reminders-plus/ ├── main.js ├── manifest.json ├── styles.css └── bin/ └── reminders-cli - If macOS complains the helper isn't executable, run
chmod +x bin/reminders-cliin that folder - Reload Obsidian and enable Apple Reminders Plus under Community plugins
Grant permissions
The first time the plugin talks to Reminders, macOS will ask if it can access Reminders — click OK. You can review or change this later at:
System Settings → Privacy & Security → Reminders
How it works
The plugin bundles a small, pre-compiled command-line helper (bin/reminders-cli) built from the Objective-C source in objc/reminders-cli.m. It links against Apple's EventKit framework — the same API Apple's own Reminders app and Shortcuts use — and exposes a handful of subcommands (lists, fetch, create, delete, complete) that read and write reminders, printing JSON to stdout.
The Obsidian plugin (main.ts) calls this helper via Node's child_process.execFile and renders the result. There is no AppleScript, no network access, and no data leaves your machine. The helper ships as a universal binary (Intel and Apple Silicon).
You can inspect and rebuild the helper yourself — see Development below.
Development
Requirements
- Node.js — for the plugin itself (
main.js) - macOS with Xcode Command Line Tools (for
clangand theEventKit/AppKitframeworks) — only needed to (re)build thereminders-clihelper
Setup
npm install
Build
npm run build # type-checks and bundles main.js (production) — cross-platform, no macOS needed
npm run dev # watches and rebuilds main.js on change
npm run build:cli-helper # (re)compiles the reminders-cli helper from objc/reminders-cli.m — macOS only
The plugin's TypeScript/JavaScript build (npm run build) doesn't touch the native helper — that's what keeps it runnable in any CI environment. To actually use the plugin locally you still need a compiled bin/reminders-cli, which npm run build:cli-helper produces.
Lint
This project uses eslint-plugin-obsidianmd, the same linter used by Obsidian's plugin review process:
npm run lint
Try it in a vault
Copy main.js, manifest.json, styles.css, and bin/ into <vault>/.obsidian/plugins/apple-reminders-plus/, then reload Obsidian (or use a tool like hot-reload during development).
Roadmap / ideas
- Code block renderer (embed a reminder list inline in a note)
- Due date picker when creating reminders
- Natural language date parsing ("tomorrow", "next Monday")
- Auto-refresh on an interval
License
For plugin developers
Search results and similarity scores are powered by semantic analysis of your plugin's README. If your plugin isn't appearing for searches you'd expect, try updating your README to clearly describe your plugin's purpose, features, and use cases.