Kanbn Extension for Visual Studio CodeThis extension adds a Kanbn-powered kanban board to Visual Studio Code.
What is Kanbn?Kanbn is a CLI kanban application that stores the kanban board and tasks inside your repository as markdown files. This makes it easy to view and edit tasks using any editor, and it means you can benefit from Git's version control and collaboration features when doing project management. You don't need to have Kanbn installed to use this extension. Check here for more information about Kanbn. How do I install this extension?To install the extension, open the Extensions view, search for What does this extension add?When you open a workspace, there will be a new item in the status bar. If Kanbn isn't already initialised in the open workspace, clicking this item will allow you to initialise a new Kanbn project.
If Kanbn is initialised, the status bar item will display the total number of tasks, the number of tasks that have been started and the number of completed tasks. Click on the status bar item to open the Kanbn board. On the Kanbn board, you can move tasks between columns, filter visible tasks and create new tasks. Click on a task's title to open the task editor in a new tab. From here, you can modify or delete tasks. You can also modify the index or task files directly, or by using Kanbn CLI commands, and the Kanbn board should update automatically to reflect these changes. CommandsThe following commands are available:
Configuration settingsThe following configuration settings are available:
Filtering the Kanbn boardAt the top-right of the Kanbn board there is a filter input. To filter visible tasks, enter a filter string and click the filter button (or press Enter). Filter string syntaxText entered into the filter string input will be tested against each task's
ExamplesFor these examples, assume we have a string custom field 'MyCustomField' and a boolean custom field 'MyCustomFlag' defined in the project options, i.e.
(See https://github.com/basementuniverse/kanbn/blob/master/docs/index-structure.md for more information on custom fields)
ViewsA view is a saved board layout: its own columns, lanes and filters over the same tasks, without moving anything or changing the board's columns. Views are configured in the board file (or in If a board has views configured, a picker appears in the board header next to the filter input. Select a view to show it, or 'Board' to go back to the normal board. A view is read-only. Its columns are filters with a label on them rather than the board's own columns, so there's no move that corresponds to dragging a card from one to another — tasks can't be dragged while a view is showing, and the header says so. Everything else still works: you can search and filter within a view, and clicking a task's title opens it in the task editor as usual. A view with lanes is drawn as a stack of lanes under one row of column headings, one row per lane. Tasks that don't match any lane aren't shown, and a task that matches more than one column or lane appears in each of them. Writing task descriptionsTask descriptions and comments are markdown. Each one has a formatting toolbar above it while you're editing, and an Edit/Preview button to switch between the markdown source and the rendered result. The toolbar covers bold, italic, strikethrough, headings (via a dropdown for the level), links, images, block quotes, inline code, bulleted/numbered/task lists, code blocks, tables, horizontal rules and maths. As well as the usual markdown, descriptions support:
Links and imagesLinks and images can point at web addresses or at files in your project. Because task files live inside the Kanbn folder rather than at the root of your workspace, it matters which prefix you use:
So a screenshot stored at
Clicking a link in the preview opens it: web addresses in your browser, local files in the editor (images and PDFs open in their own viewer rather than as text). Images are only displayed if they're inside your workspace folder — a webview isn't allowed to read files from anywhere else, so an image outside it shows its alt text instead. It still works as a link. If a path contains spaces, wrap it in angle brackets so markdown reads the whole thing:
Dragging files into a descriptionYou can drag a file onto a description or comment while editing it, and a link to it is inserted at the cursor. Images are inserted as images, everything else as a link, and the file's name becomes the label. Dropping several files at once inserts one per line. Dragging from the Explorer panel is the most reliable source; drags from a file manager or from a browser usually work too, as they carry the file's location with them. Some applications hand over only a file's contents and no path at all — if that happens you'll get a message saying so, rather than a broken link. A file inside the workspace is written as a Styling the Kanbn boardThis extension has been tested using various themes (light, dark and high-contrast), so it should always look somewhat presentable. However, if you'd like to set your own styles you can do so by creating a CSS file called |

