Task Board

unlisted

by Custom

A Kanban-style task board that reads tasks from 'tasks' folders across your vault. Supports status, tags, priority, and sorting.

Updated 13d ago
View on GitHub

Task Board Plugin for Obsidian

A powerful Kanban-style task board for Obsidian that automatically organizes tasks from your vault's tasks folders. Features include recursive subfolder scanning, tag-based organization, multi-select filtering, and drag-and-drop support.

Task Board Preview

Features

  • šŸ“‹ Kanban Board View: Visual task management with status columns (To Do, In Progress, Done, Archive)
  • šŸ” Recursive Scanning: Automatically finds tasks in all subfolders of your task directories
  • šŸ·ļø Tag-Based Organization: Organize tasks by tags with one click
  • šŸ”˜ Multi-Select Tag Filter: Filter tasks by multiple tags simultaneously
  • šŸŽÆ Priority Indicators: Visual priority levels (High, Medium, Low)
  • šŸ“‚ Main Tab View: Opens in the main workspace, not the sidebar
  • ⚔ Quick Actions: Change status, priority, and open tasks directly from the board
  • šŸ”„ Auto-Refresh: Automatically updates when tasks are modified

Installation

Manual Installation

  1. Download the latest release of the plugin

  2. Extract the files to your vault's .obsidian/plugins/task-board/ folder

  3. The folder structure should look like:

    .obsidian/plugins/task-board/
    ā”œā”€ā”€ main.js
    ā”œā”€ā”€ manifest.json
    └── styles.css
    
  4. Restart Obsidian

  5. Go to Settings → Community Plugins

  6. Find "Task Board" and click Enable

From Obsidian Community Plugins (Coming Soon)

  1. Open Obsidian Settings
  2. Go to Community Plugins
  3. Search for "Task Board"
  4. Click Install, then Enable

Quick Start

1. Create Your First Task

Create a markdown file in any tasks folder (or subfolder) with frontmatter:

---
status: todo
tag: feature
priority: high
---

# Implement user authentication

Add login and signup functionality to the application.

2. Open the Task Board

  • Click the šŸ“‹ layout board icon in the left ribbon, or
  • Run the command: "Task Board: Open Task Board" (Ctrl/Cmd + P)

3. Organize Your Tasks

Use the toolbar to:

  • Sort tasks by priority, tag, title, or folder
  • Filter by multiple tags using the checkbox filter
  • Organize tasks into folders by tag

Task File Format

Tasks are markdown files with YAML frontmatter:

---
status: todo | in-progress | done | archive
tag: your-tag-name
priority: high | medium | low
---

# Task Title

Task description and details...

Frontmatter Fields

FieldRequiredDefaultDescription
statusNotodoTask status column
tagNountaggedTag for filtering and organization
priorityNomediumTask priority level

Folder Structure Example

vault/
ā”œā”€ā”€ Project A/
│   └── tasks/
│       ā”œā”€ā”€ feature-request.md
│       └── bug-fix.md
└── Project B/
    └── tasks/
        ā”œā”€ā”€ archive/
        │   └── old-task.md
        └── current/
           └── new-task.md

Using the Task Board

Board Controls

ButtonAction
Sort byChoose sort criteria (Priority, Tag, Title, Folder)
↑/↓Toggle sort direction (ascending/descending)
šŸ“ OrganizeMove all tasks into folders named after their tags
šŸ”„Refresh the board
āœ• ClearClear all tag filters

Tag Filter

The multi-select tag filter appears below the header:

  • Checkboxes: Select one or more tags to filter tasks
  • All: Select all tags (show all tasks)
  • None: Clear all selections
  • Count: Shows number of tasks per tag

Task Card Actions

ActionHow
Open taskClick the task title
Change priorityClick the colored priority dot (šŸ”“šŸŸ”šŸŸ¢)
Change statusRight-click the task card
Drag and dropDrag card to another column (coming soon)

Status Columns

Default columns: To Do → In Progress → Done → Archive

Customize in Settings: Task Board Settings → Status columns

Commands

CommandDescription
Task Board: Open Task BoardOpen the task board in main tab
Task Board: Organize tasks by tagMove all tasks to tag-based folders
Task Board: Organize tasks in current folder by tagOrganize tasks in the current file's folder

Settings

Access settings at: Settings → Task Board

Task folder names

Names of folders to scan for tasks (comma-separated). Default: tasks

Examples:

  • tasks - Scans any folder named "tasks"
  • tasks, todo, issues - Scans multiple folder names

Status columns

Order and names of status columns (comma-separated). Default: todo, in-progress, done, archive

Default status

Status for tasks without frontmatter. Default: todo

Organizing Tasks by Tag

The "Organize by tag" feature automatically moves task files into subfolders:

Before

tasks/
ā”œā”€ā”€ task1.md (tag: TAG1)
ā”œā”€ā”€ task2.md (tag: archive)
└── task3.md (tag: TAG1)

After

tasks/
ā”œā”€ā”€ TAG1/
│   ā”œā”€ā”€ task1.md
│   └── task3.md
└── archive/
    └── task2.md

Use this to keep your task folders organized automatically!

Tips & Best Practices

  1. Use Consistent Tags: Stick to a set of standard tags for better filtering
  2. Archive Completed Tasks: Move done tasks to archive status to keep board clean
  3. Use Priorities: Mark urgent tasks as high priority for visibility
  4. Nested Folders: The plugin scans infinitely deep - organize tasks however you like
  5. Multiple Projects: Each project can have its own tasks folder

Troubleshooting

Tasks not appearing?

  • Ensure files are in a folder named tasks (or your configured folder names)
  • Check that files have .md extension
  • Click the šŸ”„ refresh button

Plugin won't enable?

  • Check that main.js, manifest.json, and styles.css are in the plugin folder
  • Restart Obsidian after manual installation

Changes not saving?

  • Ensure you have write permissions in your vault
  • Check Obsidian's file sync status

Development

Build from Source

cd .obsidian/plugins/task-board
npm install
npm run build

Reload Plugin

obsidian plugin:reload id=task-board

License

MIT License

Support

  • Report issues on GitHub

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.