# Trackle is a desktop client for the Freckle timetracking service, written in JS and packaged with node-webkit.

This App started out as a weekend hack project, and a chance to test out new technologies. During our internal 20% week, we polished it up with an intent to release it to the public.

It's currently in alpha status, but please do try it out and leave feedback.


Trackle was born out of frustration with some of Freckle's interface decisions, mostly because I was having trouble getting a clear overview about which days I had tracked my times, and which I hadn't.

Especially problematic for me was the default, flat list of tracked entries without a grouping by day, or a quick way to see overall amounts of tracked time.

Additionally, their tracking UI leaves a lot to be desired, it constantly forgets the previously selected project and hides dates in a dropdown calendar.

What I really wanted some some kind of week-view, with a visualization of tracked time per day. A view very similar to the standard event-on-a calendar. A blob of activity on a timeline of my workday.

Trackle is intended to provide super quick access to an overview of your tracked time for a given week, and low friction tracking.


Trackle is built as a node-webkit Desktop Application.

Freckle API

Existing api wrappers for Freckle were unfortunately long-outdated and (at the time) did not support entry search functionality, which I needed to filter entries by the currently logged-in user.

Unfortunately, the Freckle API silently dropped support for the time_from and time_to attributes, which currently prevents me from showing entries as true independent 'events' with their own start-time. Instead, entries will fill up a day from top to bottom, regardless of when they were created. (i.e. there will be no gaps between entries.)


Node-webkit is a project which combines node.js and browser environments, allowing you to write JS Webapps in a native window frame. This is really cool if you're a frontend developer wanting to continue to write Apps in JS, still using all you favorite tools.

Creating an Application with node-webkit is ridiculously easy - all you need is a package.json, and index.html and you're good to go.

One benefit coming out of the merge of node.js and browser is a relaxed security model overall - There's no restrictions to cross-domain XHR requests, saving me from having to set up a CORS proxying service for the Freckle API.

Writing Trackle as a native desktop application, also turned out to be beneficial to my tracking habits. It's much faster to fire up the app than having to deal with Freckle's tendency to log me out after every visit, and the overly verbose way of creating an entry.


Mehr von uns

Unsere Stories

  • Phase 1: Work | Phase 2: ??? | Phase 3: Profit!

    Wovon profitiert eine Agentur wohl am meisten? Klar, ständig ausgebuchte Entwickler und Designer mit jeweils 8 effektiven Arbeitsstunden am Tag, die möglichst alle beim Kunden abgerechnet werden. Selbst wenn dieses Szenario realistisch wäre, darf bezweifelt werden, ob es der einzige Weg zum blühenden Unternehmen mit einer ansprechenden Kultur ist. Und zum Erfolg.
  • My Way into Clojure: Building a Card Game with Om - Part 1

    In order to gain hands-on experiences with functional programming, I wrote an HTML5 card game with Om, a “JavaScript MVC” written in ClojureScript. This first post starts our journey travelling down the Clojure rabbit hole. I'll share my experiences getting started with Clojure, introduce the language's features and explain why its LISP syntax is a logical consequence of its deep infatuation with simplicity.