Developer Journal - taskbook

Getting Started

I really like small, highly functional command line tools. I am a long-time user of Vim, and I am always on the lookout for additional tools that I can use without removing my hands from the keyboard. I am not necessarily against GUI tools, but I find myself to be most productive from a developer standpoint when I limit their use.

This time around, I want to take a look at a CLI productivity tool for managing tasks called taskbook.


Taskbook is command line program for managing tasks and notes. It has a nice, compact command syntax and a number of features for managing and categorizing tasks. Along with the basics of adding, deleting and marking tasks as complete, it has the ability to set categories, priorities, and even tag important tasks with a star. It is easy to install, and includes comprehensive help. It is also multi-platform and works well on Linux, Windows, and MacOS.


Taskbook is written in JavaScript, and requires a reasonably recent version of Node.js. (I have used it with v8.x and v10.x)


From your favorite terminal program, enter the following to install taskbook:

>npm install --global taskbook


Once the installation process completes, you can try taskbook with the command:


By default, it will display the current list of tasks and notes. To view the help, enter this command:

>tb --help

With the help, it should be easy to get started entering and managing tasks and notes. More comprehensive information is available from the GitHub page above.

How I Use It

My primary task management tool is a Bullet Journal I keep in a paper notebook. However, I like to keep small task lists and notes for some of my personal programming projects. I mostly use it for small experimental projects to avoid cluttering up my paper notebook with failed experiments. It gives me an easy way to group my tasks and notes for test projects and keep track of where I left off.