README file from
GithubKonbini Kanban
A Linear-style kanban board rendered as a custom Obsidian Bases view. Each task is a note; the board reads and writes the note's frontmatter — with a little convenience-store pixel art for company.
Features
- Status columns — Backlog · Todo · In Progress · Done · Canceled (Linear glyphs). Drag a card between columns to rewrite its
status, with a springy animation. - Priority — No priority · Urgent · High · Medium · Low, with Linear's signal-bar icons.
- Labels — multi-value, with on-the-fly creation; the picker suggests labels already used across the base.
- Sub-tasks — created as separate notes linked by a
parentproperty; they nest visually under the parent card, which shows adone/totalrollup. - Custom statuses & priorities — type a new name in any status/priority picker and pick "Create …"; new ones persist and new statuses become columns.
- Start & end dates — pick dates in the create modal or on a card; overdue due dates turn red.
- Attachments — attach images and other files via the create modal (paperclip, drag-drop, or paste); they're imported into the vault and embedded.
- Quick create — a Linear-style "New task" modal (
+on any column header, or the branch icon on a card for a sub-task). - Konbini pixel art — a delightful animated convenience-store scene along the bottom of the board. Toggle it off in plugin settings.
- Configurable — every property name and the column set are remappable in the view's options; defaults match the screenshots out of the box.
How it works
Obsidian's BasesView API is read-only: it hands the view the filtered set of notes and their evaluated property values. All mutations (drag-to-restatus, priority, labels, create) are written back through app.fileManager.processFrontMatter() / vault.create(). Frontmatter is read directly via the metadata cache, so the board stays in sync whenever a note changes.
Data model
One task = one note. Example frontmatter:
---
title: Wire up the auth callback
status: in progress
priority: high
labels:
- backend
- bug
parent: "[[Epic — Authentication]]"
---
Body text becomes the task description.
Install (manual, for development)
npm installnpm run build(ornpm run devto watch)- Copy
main.js,manifest.json, andstyles.cssinto<vault>/.obsidian/plugins/konbini-kanban/ - Enable Konbini Kanban in Settings → Community plugins.
- Make sure the core Bases plugin is enabled.
Use
- Create a base (
.base) whose filter selects your task notes. - Add a view and choose Kanban as the view type.
- (Optional) Open the view options to remap property names or redefine columns
via
key:Label, key:Label.
View options
| Option | Default | Notes |
|---|---|---|
| Status property | status |
frontmatter key holding the status value |
| Priority property | priority |
|
| Labels property | labels |
list-valued |
| Parent property | parent |
wikilink/path to the parent task |
| Title property | title |
falls back to the filename |
| Start/End date property | startDate / endDate |
|
| Default status | todo |
applied to new tasks |
| Columns | (Linear set) | backlog:Backlog, todo:Todo, … |
License
MIT