To Do list / Task List manager ; Taskfreak

When ( not if ! ) you decide you need a To Do list / Task List then I suggest you head over to the Lifehacker web site. This is an excellent site for productivity ideas ( also some fun non productive ones ! ). It covers both computer based and non computer based ( e.g. paper notebooks etc. ) tools. If you decide on a paper based approach then head over to Cultpens to select you required pen or pencil from their very interesting collection.

If you decide that  a computer based To Do list / Task List manager  is the way to go then check out a comparison of software .

I wanted a tool that was web based , that could be installed on my own web server and is easy to add and “cross off” tasks.

I tried a few different ones and found Taskfreak to be just want I needed.  It features amongst other things :-

  • Display tasks by project
  • Display tasks by deadline
  • Display completed tasks
  • Add comments to tasks
  • Simple progress bar for tasks
  • Pop up calender when adding deadlines

See the screen shots below for an idea of how it looks

It was also by far the easiest software I tested to create a new task. It is also multi user with several levels of users ( don’t worry if you just want to use it for one person – it is fine to do so ). There is a single user version on the site but it does not have as many features so I suggest you install the multi user version even if it is going to be used by only one person.

The license is GPL and it requires PHP 4.3.1+ or PHP 5 plus MySql  . It also works with PHP 7 if you use the fork on Github :-

Although TaskFreak looks like it is no longer maintained I found a fork on Github that allows TaskFreak to work with PHP 7 so I suggest you use this.

If you are using PHP 5.3 or greater  you need to edit /etc/php.ini and set your timezone :-

date.timezone = ‘Europe/London’

Otherwise you will see messages complaining about the timezone in the Apache logs :-

PHP Warning:  strtotime(): It is not safe to rely on the system’s timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected ‘Europe/London’ for ‘BST/1.0/DST’ instead in /var/www/html/taskfreak/include/classes/pkg_project.php on line 28, referer:

Installing Taskfreak

This assumes you already have MySql and PHP setup. These instructions are for Centos but will be similar for various Linux distributions.

Create the database

mysql -u root -p
mysql> create database taskfreak;
mysql> grant all privileges on taskfreak.* to taskfreak@localhost identified by ‘Password’ ;

mysql>flush privileges;

I suggest restricting access to the Taskfreak directory for security in Apache. There is a good guide to do this here.

cd /var/www/html

Clone the Git repo

git clone git://

rename the directory to taskfreak

chmod -R 755 taskfreak

cd taskfreak/include

vi config.php

Change the value of TZN_DB_USER to be taskfreak

Change the value of TZN_DB_PASS to the password you set above

Point your browser at the taskfreak/install/index.php  script and click on Check install

If everything is OK it will ask you if you want to create the missing tables – click on yes install missing tables for me.

If all is OK then click on Launch Taskfreak

Login as admin ( no password ) and you will be in the application.

You will see a warning about removing the install directory – this should be done so no one can overwrite you install.

cd to the directory you installed Taskfreak in and rm -r install

Set the Admin password and profile

Go to Manage – My Profile

Set your details including a password

Click on return to list

To create another user click on the taskfreaknu1new user icon :-

Fill in the details and click on Account is enabled – this will then let you setup the user as an Administaror , Manager, Intern or Guest.

From the README file explains the privileges :-General permissions:
– guests, interns and managers can view only tasks that belong to the
projects they are associated with
– interns, managers and administrator can create tasks (guests can not)
– interns, managers and administrator can see internal tasks (guests can not)
– managers and administrator can create projects
– managers and administrator can create users
– administrator can edit everything (tasks, projects, users)

Then we can give a specific position to a user when linking him to a project:
– extern: can only see tasks, can not do anything
– official: can add comments (later)
– member: can create tasks
– moderator: can add, edit, delete tasks and comments, manage users and change
project’s status
– leader: can do everything

Associating a task to a user is only for you to organize yourself.
Someone who has access to the system and is associated to a project can see
all (public) tasks of the project.

Using Taskfreak

Taskfreak is easy to use, one of the reason why I chose it was becuase it is so easy to add a task.

To add a new task – Task – New To Do

Fill in the form as desired. The Context selection is for using TaskFreak as part of Getting Things Done (GTD)

If you need to create a new project at the same time just click on the link. To bring up a calendar for the deadline click on the icon.

Add a task
Add a task

Displaying tasks

You can display only tasks belonging to a particular project, display completed tasks only , display both completed and future tasks.

You can order the display by priority, project, deadline, status just by clicking on the headings

Display tasks
Display tasks

Adding comments

You can add time stamped comments by clicking on the “bubble” icon in the Com. field.

TaskFreak adding comments
TaskFreak adding comments

You also have a history and descrption tag

To change the status of a task ( e.g. 40% done ) just click on the Status grids next to the task

To complete a task you can click on the final grid in the status column for the task

You can edit a task just by clicking on it in the Title column.

Customizations and add-ons

As TaskFreak is open source you can customize colours , contexts etc. Head over to the TaskFreak forums where there are lots of hints and also details of plugins .

If you find TaskFreak useful then there is a donation button on the TaskFreak website.

Leave a Reply

Your email address will not be published. Required fields are marked *