Working Hours Tracker

Work time manager for Sailfish OS

WHT Logo View on GitHub Get it from OpenRepos Flattr this project Donate using Paypal


An easy to use and simple Working Hours Tracker for SailfishOS.

Keep track on your working hours easily with a native Working Hours Tracker application.

Current features:
  • Adding hours
  • Timer
  • Viewing hours in different categories
  • Deleting
  • Editing
  • Resetting database in settings
  • Cover actions for timer and adding new hours
  • Cover info for today, week and month
  • Changing effort times by adjusting duration
  • Adding break possibility
  • Settings for default duration and default break
  • Setting for timer autostart on app startup
  • Break functionality in timer
  • Possibility to adjust timer start time
  • Support for different projects
  • Project coloring
  • Shows price for efforts if project hourlyrate is set
  • Project view
  • Category summary
  • Email reports
  • Exporting as csv and .sql
  • Importing .sql dump
  • Error logging
  • Tasks within projects

Donations are welcome
Flattr this git repo
Paypal EUR
Paypal USD

Working Hours Tracker project is in transifex. Please contribute to translations there:
Project in transifex

How to use

Working Hours Tracker is quite easy to use. Here are some detailed explanations on how to use it.

Adding hours

  1. You can access the add hours in the pulley menu on the first page. It takes you to the add page.
  2. Start the timer when starting to work. You can then close the app if you want to and the timer will stay running. At the end of your work day, stop the timer and it should take you to the add page where you can adjust the details, add description and select the project.

Adding projects

Projects can be added and edited in the settings. You can select the labelcolor and hourlyrate for a project. You can edit projects by clicking them. When editing a project you can select if you want to make that project the default project which will be automatically selected when adding hours. If you set the hourlyrate for a project, you will see the price for spent hours in the detailed listing and summaries.

Using the timer

Timer can be used by pressing the big button on the first page. When started, you will see three buttons for controlling the timer.

On the left you have a break button which is meant to be used if you have a break during your workday that you don't want to include in the duration. Break works just like the timer: you start it by clicking it and stop it when the break is over.

The button in the middle stops the timer and takes you to the add page where you will be able to adjust the start and endtime and other details for the effort. The hours will be saved only when accepting the dialog.

On the right side you have a button for adjusting the timer start time. It can be used if you forget to start the timer when you start to work.

Using the cover

Cover actions can be used to quickly add hours or to control the timer. Cover actions include adding hours, starting the timer, starting a break, ending a break and stopping the timer.

When stopping the timer from the cover, it should open up the appwindow in the add view and after closing the dialog it should get minimized back to cover.


On the first page you will see total hours for different categories. If you have more than one projects you should see a attached page that can be accessed by swiping left from the first page. There you can see hours for one project at a time

Clicking a category will take you to the detailed listing view where you can see all entries in that category. You can edit those entries by clicking them.

By swiping left in the detailed view you can see a detailed summary for that category.


There are a few settings in the settings page that makes adding hours faster and easier. Default duration and default break duration will be used when manually adding hours. Starts now or Ends now by default means the option to select if you want the start time or the endtime be set to the time now when adding hours manually.

Other settings are explained in the settings page and more will come in the future versions.


In the settings you find different methods for exporting data from Working Hours Tracker.

When selecting to export Hours as CSV the syntax will look like this:

Where entries surrounded by ' are strings (LONGVARCHAR or TEXT in the sqlite database) And durations are of type REAL with . as decimal separator. An example line would look like this:

'2015231425401087574','2015-04-20','12:38','18:44',6.1,'20153191429477190454','Code review',0

This is also the syntax which is expected for the .csv importing (Coming later...) Exporting as .csv from Working Hours Tracker will create the data in the right format but if you e.g want to import your existing data into Working Hours Tracker you can create .csv files in the above syntax.
Please note that uid must be an unique id of type LONGVARCHAR and project should be an id of an existing project in your database.

Project in hours means a project id.

When exporting projects as CSV the syntax will look like this:

An example project line would look like this:
'20153191429477190454','Project name',0,0,0,0,'#ccb865'

Exporting the whole database creates a sqlite dump of the database.


At the moment importing is only possible from a .sql file. The .csv file support will come later.
Don't worry for duplicates when importing because the entries have unique id's and duplicates cannot exist in the database due to unique constraints.

Please note that importing uses INSERT OR REPLACE so you can update edited entries.

Download stats

Since 14.10.2015

Latest stats



See changelog in GitHub


BSD 3-clause