kanban-cli is a tiny Bun-powered CLI that turns a markdown file into a local Trello-style kanban board.
npx kanban-cli@latest board.mdThe browser UI runs on localhost, supports drag and drop across columns, writes every edit back to the markdown file, and reloads when the file changes on disk. If the markdown file does not exist, kanban-cli creates a starter board and opens it.
The fastest path is no install at all:
npx kanban-cli@latest board.mdIf you use Bun:
bunx kanban-cli@latest board.mdIf you'd rather have it on your PATH as kb, install globally:
npm install -g kanban-cli
kb board.mdOr run straight from a checkout (handy for hacking on the CLI itself):
bun install
bun run dev # uses ./examples/basic.md
bun run dev path.md # or pass any markdown fileRequires Bun 1.3 or newer at runtime (the published binary is built with Bun and npx/bunx will fetch it on demand).
Headings become columns. Checkbox list items become cards. The first colon separates the title from the description.
# Todo
- [ ] Add CLI: serve a local board
- [ ] Polish UI: make the board feel good
# Doing
- [ ] Wire npm publish: add NPM_TOKEN in GitHub
# Done
- [x] Create markdown board: headings become columnskanban-cli writes a canonical markdown format so changes are easy to review in git.
kb <board.md> [options]Options:
-p, --port <port>: port to bind, default4177.--host <host>: host to bind, default127.0.0.1.--no-open: start the server without opening a browser.--open: open a browser after starting, enabled by default.-v, --version: print the package version.-h, --help: show help.
If the markdown file does not exist, kanban-cli creates a starter board.
bun install
bun run typecheck
bun test
bun run build
bun run devThe published CLI is bundled into dist/cli.js. Bun serves the local API and browser app from the CLI process.
The repository includes GitHub Actions for CI and npm publishing:
.github/workflows/ci.ymlruns typecheck, tests, and the CLI build on pushes and pull requests..github/workflows/publish.ymlpublishes to npm when a GitHub release is published or the workflow is run manually.
To publish:
- Add an npm automation token as the
NPM_TOKENrepository secret. - Update the version in
package.json. - Create and publish a GitHub release.
Apache-2.0