Portable Kanban

What is Kanban? Is it possible to use it for personal task management? If you already know answers than you have an idea how kanban board looks typically:

While there is nothing wrong with physical boards it’s very convenient to have an electronic version. I spent days trying to find some suitable software and finally … developed it (seriously, it just took less time!). And if you’re looking for some simple application that could replace physical board then search is over. Now your board can look like that:


Much better! What are pros & cons of electronic board:

  • It’s dead simple.
  • It always can be with you in your laptop: just copy files to some folder.
  • It works in offline mode, no internet connections ever required.
  • It looks nice.
  • It’s even cheaper than whiteboard and sticky papers because it’s completely free.
  • It’s both personal and shared board in the single package.


  • Maybe not for large distributed groups, but it’s OK for small-to-medium ones. Look also for online alternatives.
  • No more cons found.

How to start:

  • Download application (link is below). It has no installer, just unzip it to some folder, e.g. “…My Documents\My Kanban”.
  • Start it. It requires NET 4.6.2 installed, if you don’t have it yet you can download it here. The application creates data file automatically.
  • Click everywhere, try to drag & drop cards. See About/Shortcuts first, then click Setup to configure your own board the way you want. Edit columns, topics, persons etc. Please, read notes on every setup page.
  • Use the built-in timer (aka ‘pomodoro timer’) to track your time. Easter egg: point mouse to the timer to see statistics.
  • One more thing: drag & drop any file to app window to create a new task with attached file.
  • Need more than one board? Copy app to different folders to use 2 or more boards, e.g. “Office”, “Home” etc.
  • Application is fully portable: keep it on flash drive or shared/cloud storage (OneDrive, Dropbox etc).
  • You can also create a common board and share information with your colleagues in office or worldwide. This option requires free Redis database server (3.0.504 is recommended).

Please, feel free to share your ideas for improving the application. It’s going to be updated regularly, so subscribe to this page comments. The current version is 4.3.6578.38136.

Thank you for reading/scrolling down. Now you can download it.

Portable Kanban supports plugins to extend its functionality. If you’re interested in developing your own plugin use this project as a starting point.

See also a very basic introduction to Portable Kanban:

More about personal kanban:

Too complicated for you? Ok, here is a very minimalistic pomodoro-like timer. No installation is required, just expand zip file somewhere.

1,347 thoughts on “Portable Kanban

  1. Hi Dmitry. Great software, which I’ve used for some time now!

    I’ve just upgraded to the latest version, 4.3.6458.33916, but I now have a problem where Redis is insisting that I set a password, and even when I edit the windows.redis.conf file, add one and restart the service, it won’t accept it. I know Redis isn’t your product, but can you advise please?
    I’m running on Windows 10, and everything was fine until I upgraded this morning.


  2. Hi Dmitry. I have tried couple of kanban software but these did not impress me much. May be I am wrong, kanban doesn’t show you the overall status of projects and goals but certainly a better picture of task status.
    This awesome software is really well designed with number of options to modify with our choice. Special thanks for report option.
    I have not fully explored it and hope will get more amazing functions but now I have notice missing recurrence\repeat task option. I hope it’s there and get your help me to find it or get this update soon.

  3. Hi Dimitry

    I would like to kindly let you know about two issues in recent version:

    First now when I move mail from Outlook 2013 to PK it creates new task with “New task” description. In previous versions it read message.
    Second I struggle dragging task with mous within a column. It looks like tasks take random place in column. I do not have any sorting turned on.


  4. Hi Dmirty,

    Is there an option to show up Portable Kanban application on Top of other applications when timer runs out? Or to go to full screen, or to have some visual notification that is more noticeable then blinking in the task bar?

    Sometimes timer runs out of the time and it play sound, but I usually don’t notice it in task bar and sometime I don’t wear headsets so I don’t hear it as well.

  5. Hello Dmitry, Thank you for your endless upgrades and best productivity tool for kanban. As everybody asks same thing about Outlook Integration, I know your answer. But I wonder, If there is a way to run a plugin from outside of pk? I see your quick task bar plugin and decided to write an outlook macro to export emails in “‘[Priority] [@Initials] [%Topic] [$Columns] [~Deadline] [#Tag] Task” format. I stuck on two things, 1) how can run that plugin from an outlook macro? 2) as I see Task field cant include newline feed, is there a way to include it? thank you for your comment.

    1. 1) The latest version of PK has built-in parser for Outlook and MIME messages. Please, try to drop e-mail message into PK and check, maybe you won’t have to create a plugin.
      2) Plugins can be started only within PK unfortunately.
      3) As a workaround: you still could create advanced parser based on “Quick Task Bar” and coupled with Outlook SDK for .Net (Microsoft.Office.Interop.Outlook) to create tasks based on e-mails. Sample: https://stackoverflow.com/questions/9673476/parsing-emails-in-outloook-with-c-sharp.

  6. Hi, This is Genius, Dmitry! 🙂

    It’ svery interesting if it becomes open source.
    Perhaps you may port it into Electron-based app? So it can be easily ported to other OS.

    After all, keep up the good work!

    1. It’s the same program, may be used for personal task management or within workgroups. For workgroups you’ll need to install Redis server or use external hosted one. Please, read the user guide, there are more details how to install and use PK at work.

  7. Hi Dimitry

    Have you considered adding functionality for recurring/repeating tasks? I think this is the only thing missing from this fantastic app.



    1. At this moment there are no specific settings for recurring tasks. As a workaround you just can change date and move tasks back to backlog and/or use dedicated view for recurring tasks together with special tags “Every week”, “Every month” or something like that.

  8. Hi Dimitri, thanks for creating a great app. I use it often and it’s really stable. Is it possible to create a port I can use on Ubuntu as well?

    1. Hi Yalsp- I couldn’t get this to work either, but also admit that this isn’t a feature that I would use.

      The easiest workaround that I could come up with is:

      a. Change the Settings for ‘Warn before deleting’ from ‘Yes’ to ‘No’ [under Settings/Tasks]
      b. Then, just use either CTRL-Delete or delete using the menu with the right mouse click

      The good thing about using CTRL-Delete if you adopt this approach is that if the tasks are in hierarchical order, deleting the top task will then have the focus on the next task where you can repeat the CTRL-Delete command, so you can essentially delete tasks in fairly short order. However, this could be dangerous as you can easily delete a task that you didn’t actually mean to and there isn’t a way back from that. But the good thing about this approach is that you can quickly clear out a number of those tasks if they are in such an order.

      For my purposes, I’m changing my flag back to warn me before deleting. Hope this helps!

    1. +1 for this.

      However, installation of plug-ins should (naturally) be at the risk of the installer. I’m not a technical person, but I would be very interested in what plug ins may be available to extend the functionality of Portable Kanban.

  9. Hi Dmitry,
    Very efficient app — thank you!
    I have a same error on 2 machnies (tested on Win7 and Win10) saying:
    Failed to save data to file: {C:\mypath\myfile}
    Unable to remove the file to be replaced.
    I can’t understand / decode what is to be adjusted / changed.
    Any idea / hint to fix this?

  10. A lot of thanks for this nice application. I love it. I try many to-do-managers. This is the the top. It is very good…can you not make an android and ipad version?

  11. HI, I updated to the latest version this morning and I am now getting a malicious behavior detection (trend micro). Do you have any Idea what would cause this?
    To get around this I tried to get around it by creating a second instance, and copied over the file folder (I though that’s where my saved tasks would be) but that didn’t work.
    Any ideas on how to fix the warnings or work around it?

            1. Hi Eduardo PS- Open up the settings section (looks like a little cog wheel) and scroll down. The option is titled ‘Block Esc key’ and is the second last option (titled Block Esc key when editing). Set the value from No to Yes. Hope this helps!

  12. Thank you Dmitry for your valuable PM application!

    In trying to create new tasks I get an error message saying: “Unhandled exception has occurred in your application. If you click continue, the application will ignore this error and attempt to continue. If you click Quit, the application will close immediately. SplitterDistance must be between Panel1MinSize and Width.

    This is the “Exception Text”

    System.InvalidOperationException: SplitterDistance must be between Panel1MinSize and Width – Panel2MinSize.
    at System.Windows.Forms.SplitContainer.set_SplitterDistance(Int32 value)
    at System.Windows.Forms.SplitContainer.set_Orientation(Orientation value)
    at PortableKanban.EditBox..ctor(Task task, Boolean newTask, Boolean isCopy)
    at PortableKanban.Form1.EditTask(Task task, Boolean newTask, Boolean makeCopy)
    at PortableKanban.Form1.NewTask()
    at System.Windows.Forms.Control.OnMouseDoubleClick(MouseEventArgs e)
    at System.Windows.Forms.ListBox.WndProc(Message& m)
    at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

    I’m using Net 4.7 on a single-user environment.

    Please advise!

  13. Hi Dmitry,
    Missing column issue solved. I did not enable the new columns in the view editor.
    Thanks again for sharing your energy and time.

  14. Hello Dmitry, thank you for sharing this great tool.
    I just discovered a small but enoying bug: new colums defined in the config table are present in the pk3 file but they are not displayed. All other functions like rename or move work as expected.
    I double-checked this point on a new installation ( revision x866, win7) with the same outcome.
    It would be great if you could have a look on this issue.

  15. got an error in Edit Task

    Operation did not succeed because the program cannot commit or quit a cell value change.
    Was trying to make a subtask, and somehow delete/addtext and click the checkbox drove this.

    Not a high priority.

    See the end of this message for details on invoking
    just-in-time (JIT) debugging instead of this dialog box.

    ************** Exception Text **************
    System.InvalidOperationException: Operation did not succeed because the program cannot commit or quit a cell value change.
    at System.Windows.Forms.DataGridView.set_CurrentCell(DataGridViewCell value)
    at PortableKanban.EditBox.addSubTaskStripButton_Click(Object sender, EventArgs e)
    at System.Windows.Forms.ToolStripItem.RaiseEvent(Object key, EventArgs e)
    at System.Windows.Forms.ToolStripButton.OnClick(EventArgs e)
    at System.Windows.Forms.ToolStripItem.HandleClick(EventArgs e)
    at System.Windows.Forms.ToolStripItem.HandleMouseUp(MouseEventArgs e)
    at System.Windows.Forms.ToolStrip.OnMouseUp(MouseEventArgs mea)
    at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
    at System.Windows.Forms.Control.WndProc(Message& m)
    at System.Windows.Forms.ToolStrip.WndProc(Message& m)
    at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

    ************** Loaded Assemblies **************
    Assembly Version:
    Win32 Version: 4.6.1637.0 built by: NETFXREL3STAGE
    CodeBase: file:///C:/Windows/Microsoft.NET/Framework64/v4.0.30319/mscorlib.dll
    Assembly Version: 4.2.6359.39866
    Win32 Version:
    CodeBase: file:///C:/PortableKanban/PortableKanban.exe
    Assembly Version:
    Win32 Version:
    CodeBase: file:///C:/PortableKanban/CommandLine.DLL
    Assembly Version:
    Win32 Version: 4.6.1637.0 built by: NETFXREL3STAGE
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
    Assembly Version:
    Win32 Version: 4.6.1586.0 built by: NETFXREL2
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
    Assembly Version:
    Win32 Version: 4.6.1586.0 built by: NETFXREL2
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
    Assembly Version:
    Win32 Version: 4.6.1638.0 built by: NETFXREL3STAGE
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
    Assembly Version: 4.2.6359.39865
    Win32 Version:
    CodeBase: file:///C:/PortableKanban/PortableKanban.Data.DLL
    Assembly Version: 4.2.6359.39865
    Win32 Version:
    CodeBase: file:///C:/PortableKanban/PortableKanban.Extensions.DLL
    Assembly Version:
    Win32 Version:
    CodeBase: file:///C:/PortableKanban/ServiceStack.Text.DLL
    Assembly Version:
    Win32 Version: 4.6.1586.0 built by: NETFXREL2
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
    Assembly Version:
    Win32 Version: 4.6.1586.0 built by: NETFXREL2
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
    Assembly Version:
    Win32 Version: 4.6.1637.0 built by: NETFXREL3STAGE
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Runtime.Serialization/v4.0_4.0.0.0__b77a5c561934e089/System.Runtime.Serialization.dll
    Anonymously Hosted DynamicMethods Assembly
    Assembly Version:
    Win32 Version: 4.6.1637.0 built by: NETFXREL3STAGE
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_64/mscorlib/v4.0_4.0.0.0__b77a5c561934e089/mscorlib.dll
    Assembly Version:
    Win32 Version: 4.6.1586.0 built by: NETFXREL2
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/Accessibility/v4.0_4.0.0.0__b03f5f7f11d50a3a/Accessibility.dll
    Assembly Version:
    Win32 Version: 4.6.1586.0 built by: NETFXREL2
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Design/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Design.dll
    Assembly Version: 4.2.6359.39866
    Win32 Version:
    CodeBase: file:///C:/PortableKanban/Plugins/PluginsLibrary.dll
    Assembly Version:
    Win32 Version: 4.6.1586.0 built by: NETFXREL2
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Drawing.Design/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.Design.dll

    ************** JIT Debugging **************
    To enable just-in-time (JIT) debugging, the .config file for this
    application or computer (machine.config) must have the
    jitDebugging value set in the system.windows.forms section.
    The application must also be compiled with debugging

    For example:

    When JIT debugging is enabled, any unhandled exception
    will be sent to the JIT debugger registered on the computer
    rather than be handled by this dialog box.

  16. just starting with it. Spaceba.
    Maybe add an “About” tab in Setup with the site links, and take credit?

  17. Hi Dimitry, I would like to use your product, but can’t run it. I get this error: «Portable Kanban has stopped working» with Problem Event Name: CLR20r3. Any idea how to solve the issue, please? I checked other replies but can’t see a similar problem.

  18. Hi Dimitry. Thank you so much much for developing this awesome tool 🙂 I use it daily to keep me productive and help me not to forget things! I’ve been successfully running it in Wine on an Ubuntu laptop until recently but for some reason this just stopped worked when I updated to Ubuntu 16. Now whenever I run the .exe I get an error message saying “datafile is locked by another user…” 😦 I’ve tried deleting the pk3.lock file manually and setting the Auto Login attribute to True from a Windows machine but I still can’t get it to work. Is there any way to modify one of the package files to prevent the lock file from being created and bypass the error? Thank you

  19. How are the task files named?, is there a way to get them to assume the name of the task rather than the random string?

  20. Is there a way to create a new task with the topic set by default? I have views with only one topic and would be nice to have it set automatically instead of . If you forget to set it, you have to look for the newly created task to set the topic and see it in the view.

      1. Ok, but I’d like a default topic that is different for each view. For instance if I have two views, a Wedding Plan and a New House Plan, I’d like to create new tasks in the Wedding View with a Wedding topic as default, and similarly a new task created in the New House view should be with a House topic as default.

  21. A better task editor, than the actual “notepad”, would be a blast, and integrate with the email, a heaven.

  22. Hello, when i try to move a task from a column to another, I receive sometimes the following error:

    Failed to update data on :6379[0] Zero length response

    Any ideas?

    Thanks a lot

  23. Hi Dmitry,
    What a great application. I’m using this for tasks at home, school and work. However I’m wondering if there’s a way to add these tasks to MS Outlook?

  24. Hi Dmitry,

    I get this error message with the latest version. “PortableKanban.exe is not a valid win32 application”

    Is it a bad exe file or win32 is no longer supported?


  25. Brilliant application. I have made a Kanban on a USB and trying to open it this morning it states «Data file is locked by another instance of Portable Kanban. Try to restart once again later.» Any ideas?

      1. One more question is on relative file paths for the “files” folder. When I try and use a relative file path, it recognises the path, but wont save it as relative? So when i use it in another computer and the USB drive letter changes I have to reset the “files” directory. Cheers

        1. Figured it out. Changed “E:\\KanBan\\Files”,”UseRelativePath”:false to “Files”,”UseRelativePath”:true in PortableKanBan.cfg

  26. Dear Dmitry,
    thanks for these great piece of handy SW you provide with Portable Kanban. I just started to use it as a Kanban for team task & project management and it seems to fit to my needs.
    The only drawback that I’ve recognized, is that there’s no possibility (or at least I didn’t find it) to re-sort the order of the views. As in my use case the list of views will changes quite frequently, it would be useful to have somethink like «move up» and «move down» within the Views Properties tab. Is there a workaround already existing?
    Thanks a lot,

    1. When you’re in the Settins on the Views tab, you have right above the list of the views some Buttons to reorder the views.

  27. Is there a way to change the background color of a specific task card more easily than opening up the settings menu and changing the default? That option in the right click menu would be awesome.

  28. Hi Dmitry,
    I really like your application, best one i found that really fits my need. I only have one problem. I can’t add or edit any tasks since i tested the «h split» and «v split» option. I’m running on windows 10 with a local file install. I’m getting an error message who said something about SplitterDistance (i can’t see the rest of the message)
    It’s just a little issue, i can still manage to export my database and redo the install 🙂 But i don’t know how to fix it myself or to suggest a solution.
    thanks a lot for your work !

    1. I’ll investigate the issue. You do not need to export, import or reinstall PK, just remove cfg file to reset all the settings. Remember login and password before removing cfg file.

  29. Thank you so much! I have been looking for a downloadable desktop kanban board for a while now and I’m thrilled to find this. It looks great, intuitive and easy to open and go. Well done!

  30. Hi Dmitry,
    First thing is thank you very much for your wonderful app.
    Here is my situ: I have 10 persons to assign Tasks to. sometimes I assign the task only to one, sometimes to two persons or three.
    when I want to assign the task to more than one Person I miss this possibility. of course there is the Group solution but it would be nonsence to create a Group for every two or persons persons (no. of Groups would exceed 100 !).
    could you kindly advise how to work around this situ ?
    Thanks in advance,

    1. There is no workaround to define groups on-the-fly. If task is too complex it safer to split it and assign each part to only one responsible person. My experience says that it’s better to avoid using groups at all.

  31. Dmitry,
    Has anyone produced a importer for either FreeMind or from GanttProject? If not, I take that I would create a desktop VS project in C#.NET and drop the .dll into the plugin folder?

  32. Спасибо! Реально полезный инструмент. Было бы полезно сделать еще сплошную нумерацию задач.

  33. It would be utterly interesting to get and use a fully-feature editor when documenting the tasks (1. Task). At least font colours, styles, cases, … the colours are very important when applying kanban methods. Many thanks and good job. A very interesting tool.

  34. I use your kanban for my personal tasks home & business. I like it because it’s very easy and quick. I keep on onedrive site to access it from home and office. I see that app is made in .NET (or C#. Now I’m thinking, did you try somehow to compile it in linux? I’m thinking about putting a display and an SBC (like Raspberry Pi) on my fridge with my tasks :).

    On RPi also exist and Windows IoT, but I don’t know anything about it.

    Thank you again, it helped me to make order in my life :).

  35. I’m trying the tool out for management activities planning. It would be very handy to have a quick filter on every view to only show tasks assigned to the filtered person.

  36. Hi Dmitry. Excellent software. Is it possible to stop the timer one task and switch it to another task but without stopping the Pomodore timers. CTRL + F1 reset pm on the new 25-minute. I want to change the task without stopping the timer, and the time remaining to be added to the new task. I’m sorry, my English is bad.

      1. The problem is that each click on Ctrl + F1 resets Pomodore timer on the new 25-minute. Why? Regardless of a change task, you need to let the timer counts down to 25 minutes and only then to start the new 25 minutes.

          1. The problem I solved by changing the keyboard and now it works fine. With the preceding keyboard each click on Ctrl + F1 resets the timer on Pomodore is 25 minutes. Now it’s ok. I Thank Dmitry. An excellent software.

            1. I think it would be a useful option counter pomodoro spent for one day … or some kind of chart that shows Pomodore statistics for a given number of days.

  37. Hello, is there any way for the report columns to be modified, i would like to generate reports but there is a lot of information that i do not need.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s