TaskNotes

by Callum Alpass
5
4
3
2
1
Score: 73/100

Description

The TaskNotes plugin transforms task management by treating each task as an individual Markdown note enriched with YAML frontmatter. It supports extensive metadata like due dates, statuses, priorities, contexts, and project links, allowing users to create deeply connected and highly customizable workflows. With multiple views including calendar, kanban boards, filtered lists, and daily agendas, it fits both simple to-do tracking and complex project planning. Time tracking features like start/stop timers, session history, and an integrated pomodoro timer help monitor productivity. Tasks can also recur with per-instance tracking, and the plugin supports ICS feed subscriptions for syncing with external calendars. The ability to extend frontmatter for custom fields enhances compatibility with other Obsidian tools like Bases.

Reviews

  • Yohsuke Fukai
    Reviewed on Mar 1st, 2026
    No review text provided.
  • Gabriel Amaro Hernandez
    Reviewed on Feb 19th, 2026
    The only one thing i change of this plugin. Its the tutorial, for the rest its amazing
  • Julian Ventura
    Reviewed on Jan 3rd, 2026
    No review text provided.
  • Stefi Butler
    Reviewed on Nov 27th, 2025
    No review text provided.
  • Prakash
    Reviewed on Nov 24th, 2025
    No review text provided.

Stats

1817
stars
237,340
downloads
170
forks
321
days
2
days
3
days
286
total PRs
20
open PRs
50
closed PRs
216
merged PRs
1,458
total issues
258
open issues
1,200
closed issues
0
commits

Latest Version

3 days ago

Changelog

TaskNotes 4.9.0

Security

  • (#1923) Restricted the HTTP API server to loopback and limited browser CORS access to loopback origins.
    • Thanks to @martin-forge for reporting.

Added

  • (#1932) Added middle-click support for opening task cards in a new tab.
    • Thanks to @imsuck for the request.

Fixed

  • (#1934) Fixed custom priority colors being overridden by default task-card priority styles in views.
    • Thanks to @KittehBit for reporting.
  • (#1933) Added the note path to fallback frontmatter parse warnings so malformed task YAML is easier to find.
    • Thanks to @rayvermey for reporting.
  • (#1931) Made the Pomodoro task chooser open from cached task data and ignore repeated clicks while it is already opening.
    • Thanks to @sumiyalairu03 for reporting.
  • (#1930) Fixed starting the Pomodoro timer from its hotkey without starting time tracking for the selected Pomodoro task.
    • Thanks to @sumiyalairu03 for reporting.
  • (#1929) Fixed the bottom Relationships widget overlapping embedded content such as Bases/Kanban views in task notes.
    • Thanks to @rchaklashiya for reporting and following up with the embed case.
  • (#1922) Restored the native color picker alongside manual color text entry in Create/Edit Timeblock fields.
    • Thanks to @AndreMonthy for reporting.
  • (#1921) Fixed direct frontmatter edits to lifecycle-relevant task fields not triggering Google Calendar sync or auto-archive side effects.
    • Thanks to @martin-forge for reporting and verifying the direct-edit reproduction.
  • (#1919) Fixed the Pomodoro view rapidly resizing at certain sidebar sizes.
    • Thanks to @RumiaKitinari for reporting.
  • (#1898, #1907) Fixed Calendar time labels shifting into the middle of Day and sidebar calendar grids after switching views.
    • Thanks to @ddevaal for reporting and confirming the regression, and to @kmaustral for confirming the sidebar case in 4.8.1.
  • (#1936) Added a Calendar Base drag/drop resolution option so events can snap to smaller increments than the visible time slot grid.
    • Thanks to @benmartinek for suggesting this.
  • Improved mobile task cards, inline widgets, modals, and settings layouts so dense controls and long labels fit more comfortably on small screens.
  • (#1916) Fixed Markdown task links using Obsidian's generated filename label instead of the TaskNote title in the task link overlay.
    • Thanks to @minchinweb for reporting.
  • (#1911) Fixed recurrence choices starting from today instead of the selected calendar date when creating a task from Calendar view.
    • Thanks to @mikhailmarka for reporting.
  • (#1912) Fixed "Create subtask" pre-filling the parent task's full folder path in the Projects field instead of using the normal Obsidian link text.
    • Thanks to @pkuehne for reporting and @benmartinek for confirming.

README file from

Github

TaskNotes for Obsidian

A task management plugin where each task is a separate Markdown note, and all views are powered by Obsidian Bases.

Overview

Each task is a Markdown note with YAML frontmatter. Every view is a Bases query.

Bases is Obsidian's core plugin for turning notes into databases—it reads properties from your notes and lets you filter, sort, and group them without writing code. TaskNotes stores tasks as notes with structured frontmatter, then uses Bases to query and display them. The Task List, Kanban, Calendar, and Agenda views are all .base files.

This keeps your data portable. Tasks are just Markdown files with YAML, so you can read them with any tool, transform them with scripts, or migrate them elsewhere. There's no plugin-specific database.

The frontmatter is extensible—add fields like energy-level or client and they're immediately available in Bases for filtering and grouping. The .base files are plain text too, so you can edit filters and sorting directly or duplicate them to create new views.

Screenshot of TaskNotes plugin

Full Documentation

Quick start

Create a task with TaskNotes: Create new task. The plugin parses natural language—type "Buy groceries tomorrow #errands" and it extracts the due date and context automatically.

Tasks are stored as Markdown files in your vault. Open them directly, edit the frontmatter, or use the plugin's views to manage them.

Open a view with commands like TaskNotes: Open tasks view or TaskNotes: Open kanban board. These open the corresponding .base files from TaskNotes/Views/.

How it works with Bases

TaskNotes registers as a Bases data source and provides custom view types: tasknotesTaskList, tasknotesKanban, tasknotesCalendar, and tasknotesMiniCalendar. The default Agenda file is a preconfigured tasknotesCalendar list view (listWeek). Your task notes become rows; frontmatter properties become columns.

The default .base files include formula properties for computed values:

formulas:
  daysUntilDue: if(due, ((number(date(due)) - number(today())) / 86400000).floor(), null)
  isOverdue: due && date(due) < today() && status != "done"
  urgencyScore: formula.priorityWeight + max(0, 10 - formula.daysUntilDue)
  efficiencyRatio: (timeTracked / timeEstimate * 100).round()

You can sort by urgencyScore, filter to show only isOverdue tasks, or add these as columns. Edit the .base files directly or use the Bases UI. See default base templates for the full list of included formulas.

Task structure

title: "Complete documentation"
status: "in-progress"
due: "2024-01-20"
priority: "high"
contexts: ["work"]
projects: ["[[Website Redesign]]"]
timeEstimate: 120
timeEntries:
  - startTime: "2024-01-15T10:30:00Z"
    endTime: "2024-01-15T11:15:00Z"

Recurring tasks use RRULE format with per-instance completion tracking:

title: "Weekly meeting"
recurrence: "FREQ=WEEKLY;BYDAY=MO"
complete_instances: ["2024-01-08"]

All property names are configurable. If you already use deadline instead of due, remap it in settings.

Other features

Calendar sync with Google and Microsoft (OAuth) or any ICS feed. Time tracking with start/stop per task, Pomodoro timer, and session history. Recurring tasks with fixed or flexible schedules and per-instance completion tracking. Dependencies between tasks. Natural language parsing for task creation. Custom statuses, priorities, and user-defined fields.

Integrations

TaskNotes has an optional HTTP API. There's a browser extension and a CLI. Webhooks can notify external services on task changes. See HTTP API docs and Webhooks docs.

Language support

UI: English, German, Spanish, French, Japanese, Russian, Chinese, Portuguese, Korean.

Natural language parsing: English, German, Spanish, French, Italian, Japanese, Dutch, Portuguese, Russian, Swedish, Ukrainian, Chinese.

Screenshots

Screenshots are generated from the Playwright documentation suite (npm run e2e:docs).

Calendar

Month

Week

Day

Year

Task views

Tasks

Kanban

Agenda

Mini Calendar

Features

Task Modal

Pomodoro

Stats

Settings

Credits

Calendar components by FullCalendar.io.

License

MIT—see LICENSE.

Similar Plugins

info
• Similar plugins are suggested based on the common tags between the plugins.
Checkbox Time Tracker
2 years ago by UD
Checkbox Time Tracker for Obsidian
Chronotyper
a year ago by BambusControl
Obsidian plugin for tracking note edit time
Countdown To
a year ago by Gui Cattani
A countdown/progress Obsidian widget using progressbar.js
Days Since
2 years ago by gndclouds
A plugin to show the number of days since a given date.
Fastimer
2 years ago by vkostyanetsky
Intermittent fasting tracker plugin for Obsidian
Fetch Prayer Times
a year ago by Ecys
Fetches times from Aladhan API and inserts into a table.
Flexible Pomodoro
4 years ago by grassbl8d
Focus Time
a year ago by AstraDev
Focus Time is a plugin that helps you track how much time you spend on each note.
Grandfather
5 years ago by Danny Hernandez
A simple Obsidian plugin to display the time and date on the status bar
Lark Style CountDown Timer
6 months ago by Zhaoyang Yu
ManicTime
2 years ago by Finkit d.o.o.
Obsidian-compatible Watcher for ActivityWatch
3 years ago by Grimmauld
Obsidian plugin to track user activity with ActivityWatch
Relative Timestamps
2 years ago by Charles Young
RescueTime
3 years ago by Tatsuya Hayashi
A RescueTime integration plugin to view your activity logs in Obsidian.
Role Switch
3 months ago by Zafrem
Switch between different work roles (developer, writer, researcher, etc.) with intentional transitions and session tracking.
SolidTime Integration
a year ago by proniclabs
Obsidian SolidTime Integration Plugin
Stopwatch
5 years ago by Tokuhiro Matsuno
Super Simple Time Tracker
4 years ago by Ellpeck
Multi-purpose time trackers for your notes!
Tag Timer
5 months ago by quantavil
The Tag Timer is a versatile plugin for Obsidian that allows you to seamlessly track the time you spend on specific tasks or sections within your notes.
Time Things
2 years ago by Nick Winters
Show clock, track time spent editing a note, and track the last time a note has been edited.
Timekeep
2 years ago by Jacobtread
Obsidian task time tracking
Timelog
5 months ago by Eddie Blundell
Time logging plugin for obsidian
TimeStamper
4 years ago by Martin Eder
A plugin for Obsidian to quickly insert customized date- and time-stamps to the currently active note
Toggl Track
5 years ago by Maxime Cannoodt
A Toggl integration plugin for the popular knowledge base application Obsidian.
WakaTime
3 years ago by WakaTime
Obsidian.md plugin for automatic time tracking and metrics generated from your Obsidian usage activity.
Wakatime / Wakapi
a year ago by Kevin Woblick
Connect your Obsidian to Wakatime or Wakapi to track the time spent while browsing or writing notes.