{"id":19001460,"url":"https://github.com/bumi/trackle","last_synced_at":"2026-04-19T16:30:22.073Z","repository":{"id":26036836,"uuid":"29479977","full_name":"bumi/Trackle","owner":"bumi","description":"A friendly Freckle desktop client","archived":false,"fork":false,"pushed_at":"2014-09-18T10:05:48.000Z","size":63884,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-01-01T18:31:28.220Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"CoffeeScript","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"Anupam-dagar/awesome-first-timers","license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bumi.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING","funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-01-19T16:28:53.000Z","updated_at":"2015-03-31T15:22:43.000Z","dependencies_parsed_at":"2022-08-24T14:19:49.983Z","dependency_job_id":null,"html_url":"https://github.com/bumi/Trackle","commit_stats":null,"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bumi%2FTrackle","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bumi%2FTrackle/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bumi%2FTrackle/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bumi%2FTrackle/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bumi","download_url":"https://codeload.github.com/bumi/Trackle/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240020561,"owners_count":19735216,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-08T18:11:20.059Z","updated_at":"2026-04-19T16:30:20.003Z","avatar_url":"https://github.com/bumi.png","language":"CoffeeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"Trackle\n====\n\nA friendly Freckle desktop client. [(Download Trackle.app)](https://github.com/brumm/Trackle/releases)\n\n![image](screenshots/mole-use.png)\n\n### Trackle is a desktop client for the Freckle timetracking service, written in JS and packaged with node-webkit.\n\nThis 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.\n\nIt's currently in alpha status, but please do try it out and leave feedback.\n\n--\n\nTrackle 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.\n\nEspecially 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.\n\nAdditionally, their tracking UI leaves a lot to be desired, it constantly forgets the previously selected project and hides dates in a dropdown calendar.\n\nWhat I really wanted was some kind of week-view, with a visualization of tracked time per day.\n\nA view very similar to the standard event-on-a calendar. A blob of activity on a timeline of my workday.\n\nTrackle is intended to provide super quick access to an overview of your tracked time for a given week, and low friction tracking.\n\n--\n\nTrackle is built as a node-webkit Desktop Application.\n\n## Freckle API\n\nExisting 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.\n\n```bash\ncurl -v -G -H \"X-FreckleToken:lx3gi6pxdjtjn57afp8c2bv1me7g89j\" https://apitest.letsfreckle.com/api/entries.json -d 'search[people]=1234'\n```\n\n```coffeescript\nfreckle.entries.list\n  \"search[people]\": 1234\n, options, (err, response) -\u003e\n  console.log response\n```\n\nUnfortunately, 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.)\n\n![](screenshots/Trackle-start.png)\n\n## node-webkit\n\n[Node-webkit](node-webkit-repo) 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.\n\nCreating an Application with node-webkit is ridiculously easy - all you need is a package.json, and index.html and you're good to go.\n\nOne 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.\n\nWhile I developed Trackle on a Mac, node-webkit is also available for Linux and Windows (node-webkit-repo#downloads), making it easy to port. \n\nWriting Trackle as a native desktop application, also turned out to be beneficial to my tracking habits.\nIt'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.\n\nIt is not planed to provide all functionalities of the freckle Interface, like reports, billing and so on. It can be seen as an addition to make the daily tracking more comfortable. If there are features you are specially interested in, do not hesitate to contact me.\n\n--\n\n[node-webkit-repo]: https://github.com/rogerwang/node-webkit/\n[node-webkit-repo#downloads]: https://github.com/rogerwang/node-webkit#downloads\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbumi%2Ftrackle","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbumi%2Ftrackle","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbumi%2Ftrackle/lists"}