PersonKanban

July 9, 2026 ยท View on GitHub

PersonKanban Richard's GitHub stats

PersonKanban

A lightweight personal Kanban board for everyday use. It is built around the ideal that you want to only (or mostly) use the keyboard. While there are some controls that are clickable for using them (such as double clicking on a title of a list will edit that title. Or, double clicking on an item will open it for editing.), it was designed from the ground up to be a fully keyboard driven kanban board. The hotkey system is very similar to the modal editing found in vim/neovim. While the actual keys used are hard coded right now, I do have a future plan to make them modifiable. There are many things I have plans for that I am looking for time to implement.

While I do call it a kanban board, I know that it doesn't work by the strict definition of a kanban board. Therefore, please don't flame me that it isn't a kanban board. It is my interpretation of it and has worked quite well for me for several years now. If you don't like something, let me know in the discussion boards of this repo and I might work on it when I have time. Or, fork this repo, make the edits, and submit a pull request. I would love and accept help in making this program more usable.

The program looks like this:

Personal Kanban

Along the top of the programs is the list of boards and the current metaboard name to the far right. The highlighted tab shows is the currently open board in the rest of the screen. Each board has as many lists as you would like to have. Also, each list has as many items as you want to add to them.

You can create, delete, and navigate around collections of boards call MetaBoards. The ideal is that each board collection, or metaboard, represents different projects or responsibilities. By clicking on the Metaboard name to the right of the list of boards, the preferences for that metaboard are made available to edit.

Personal Kanban MetaBoards

Personal Kanban also has a CommandBar to run special commands.

Personal Kanban CommandBar

There is also a QuickBar to quickly add new items like boards, lists, and items.

Personal Kanban QuickBar

The QuickBar can create a single or multiple objects like the currently highlighted object. For example, if you want to quickly add several lists to a board, you can separate each list name with ;; (two semi-colons) as in: Ideas;;Bugs;;Working;;Done. When you press Enter the four lists will be created. If you are on an empty board, just press the j key like you were going to navigate down to one and then open the QuickBar to add the new lists. The quick bar also has the ability to store several prompts for it into a single letter name for easy recall in a different project.

It is very stable project with many of the planned features in place. I am currently using it daily to track my programming projects, churches (I'm a missionary in Thailand), schedules, events, bugs, and anything you would make a todo list to track. It is currently a complete keyboard program without any drag & drop features. The keyboard hotkeys work similarly to NeoVim and Vim modal systems. But, in the Personal Kanban program, the cursor (highlighted lists or items and tabs for the boards) control the action of each key. When no cursor (highlighted area) is visible, then the keyboard actions are for boards. When one board is highlighted, but no lists are, then the commands will effect lists. If an item is selected, then the keyboard commands will effect that item. The hotkeys are explained in the Hot Keys section.

Table of Contents

How to Build

It is built using Wails 2 and Go. Once they are installed on your system, you can run it using:

rm -R build
mkdir build
cp image/appicon.png build

wails dev

or you can use the Maskfile to run Mask scripts:

mask dev

To run the developmental environment. To make a full binary build, you need to run:

wails build

I recommend that you can use the Maskfile to run Mask scripts:

mask build

Just remember, this is not high quality commercial software that you would pay for at the moment (though it is my goal). It is a labor of love that I work on as I can. Use at your own risk. I can not be held responsible for any loss of files, disk damage, etc. As far as I know, Personal Kanban isn't able to cause these things to happen.

The mask build currently creates a universal build on macOS. I haven't built and tried this software on any other platform. It should work as is on Linux, but I haven't really tried it yet. I just haven't had the time to do it. If you would like to contribute executeables for other systems, let me know and I can add them to the Releases.

Installing from Releases

You can also download the latest release on the release page. I currently only have a macOS universal build. It will say that it is from an unknown developer. You just have to give it permission in order to use it. I write programs for my personal use and anyone that wants to use them. Since I'm not making money with it, I don't want to spend the $100/year to have Apple to qualify it for general distribution. As with any free program you download, use it at your own risk. I haven't had any issues with this program while using it everyday. It only saves information to the hard drive in the user's home directory. It never deletes anything. If you have any issues or have a suggestion, please leave a comment on the discussion board.

How to Use

When you first open the program, it will create a default board ready to create lists and items in the lists. The hotkeys list below will guide you to using the program.

Hot Keys

The following are the keyboard assignments and what they do for each mode:

KeyJust board selectedList is highlightedItem in a list is highlightedItem is openQuick Bar
aCreates a new boardCreates a new list in the current boardCreates a new Item in the current ListNothingNothing
mMoves the board to the next or previous tab locationMoves the list in the direction given nextmove the item up and down the current list or to the previous or next listPuts the cursor into the message input box.Nothing
xDeletes the current boardDeletes the current listDeletes the current ItemNothingNothing
jHighlight the first listHighlight the first ItemMove the cursor to the next Item down the listNothingScroll down the list of saved registers
kNothingNothingMove the current item up the listNothingScroll up the list of saved registers
hMove to the next board to the leftMove to the next list to the leftMove to the next list to the left with the item at the same count level highlightedNothingNothing
lMove to the next board to the rightMove to the next list to the rightMove to the next list to the right with the item at the same count level highlightedNothingNothing
bGo to the board number pressed before the b key.Go to the board number pressed before the b key.Go to the board number pressed before the b key.NothingNothing
tOpen the Metaboard selectorOpen the Metaboard selectorOpen the Metaboard selectorNothingNothing
eEdits the board nameEdits the list nameNothingIf followed by a 't', the title is edited. If followed by a 'd', the description is edited.Nothing
sNothingNothingNothingSave all changes and close the item edit dialog.Toggle showing the saved registers
:Opens the CommandBarOpens the CommandBarOpens the CommandBarNothingNothing
EscClear all highlights and just have the board selected.Clear all highlights and just have the board selected.Clear all highlights and just have the board selected.Close the item edit dialog.Nothing
EnterNothingNothingOpens the List Item that is highlighted for editing.NothingCreate the Quick Bar items
SpaceOpens the QuickBar to add a new board with a description separated by a |.Opens the QuickBar to add a new list.Opens the QuickBar to add a new item with a description separated by |.NothingNothing
.Repeats the last commandRepeats the last command.Repeats the last command.NothingNothing
0-9Creates a multiple digit accumulator for the number of times to execute the next command.Creates a multiple digit accumulator for the number of times to execute the next command.Creates a multiple digit accumulator for the number of times to execute the next command.Creates a multiple digit accumulator for the number of times to execute the next command.Nothing
yNothingNothingNothingNothingSave to the register that is captured after the 'y'
pNothingNothingNothingNothingPaste the register that is captured after the 'p'
dNothingNothingNothingNothingDelete the register given in the next key stroke.

If a number key is pressed before a hot key is pressed, it is stored in the accumulator. When a hot key is pressed, then that action is performed the number of times that the accumulator has stored. For example, if you press '2l', you will move to the 2nd list to the right of the cursor or if no cursors are shown, then to the second board to the right of the current board. Be careful when using this combined with the 'x' or delete key! Pressing '99x' with just the list cursor highlighted will delete all your lists in the current board (Unless you have more than 99 lists)!

Command Bar Commands

These are the commands that can be used in the Command Bar:

CommandDescription
Open PreferencesOpens the preferences for the currently selected item.
Add a New BoardAdds a new board to the list of boards.
Delete Current BoardDeletes the currently highlighted board.
Delete Current ListDeletes the currently highlighted list.
Delete Current ItemDeletes the currently highlighted item.
Add New ListAdds a new list to the current board.
Add New ItemAdds a new item to the currently selected list.
Open Current ItemOpens the currently selected item for editing.
Move Board Cursor LeftMoves the board cursor to the left if not on the left most board.
Move Board Cursor RightMoves the board cursor to the right if not on the right most board.
Move List Cursor LeftMoves the list cursor to the left if not on the left most list.
Move List Cursor RightMoves the list cursor to the right if not on the right most list.
Move Item Cursor UpMoves the item cursor up if not on the top most item.
Move Item Cursor DownMoves the item cursor down if not on the bottom most item.
QuitThis command will exit the program.
Edit Board NameEdit the name of the current board.
Edit List TitleEdit the title of the current list.
Go To TopMove cursor to the top most item, left most list, or left most board depending on what the cursor is on.
Go To BottomMove the cursor to the bottom most item, right most list, or right most board depending on what the cursor is on.
Copy Board PreferencesMakes a copy of the current board's preferences.
Copy List PreferencesMakes a copy of the current list's preferences.
Copy Item PreferencesMakes a copy of the current item's preferences.
Paste Board PreferencesPastes the board's preferences that was copied.
Paste List PreferencesPaste the list's preferences that was copied.
Paste Item PreferencesPaste the item's preferences that was copied.
Show System PreferencesShow the system preferences dialog.

Quick Bar Usage

By pressing the space bar, an input dialog is shown where you can add boards, lists, or items based on the cursor. If the cursor isn't shown (the cursor is the highlighting around a list or item), then the new items are applied as new boards. If just a list has a cursor, then the new items are added as lists to the current board. If an item is highlighted by a cursor, then new items are added as items to the current list.

If more than one items are separated by ";;", then multiple items are created with the titles given. If items are being added, you can add descriptions by separating the title from the description with a "|".

Planned features

The following is a list of the features I plan to add in no particular order. If you have a feature you would like to see, just let me know and I'll add it to the list.

Features to add

  • Meta grouping of boards and moving between them. - done
  • A quick entry ability to quickly add different items. - done
  • Copying and pasting board or list setups to a new board or list.
  • The ability to load themes from a GitHub repository and changing or creating themes.
  • Saving of new window size, position, and last metaboard visited.
  • Add keyboard hotkeys for editing an item. Currently you have to use the mouse and double click on things to add them. - done
  • Command bar to see commands and actioning them. - done It is called the QuickBar.
  • Add more apps for items. Currently there is only a todo list app. A file app would be nice.
  • Add drag and drop with the mouse.
  • The ability for the user to add new commands and themes. Downloading commands or themes from GitHub as well.
  • Create a way to do things with Personal Kanban from the command line.
  • Add to the documentation on how to use Personal Kanban.
  • Maybe a TUI

My Different Open Source Projects

EmailIt

BullitenBoard

ScriptBar

Modal File Manager

Personal Kanban