loading...
Cover image for Introducing: Tie Tracker. A simple, open source and free time tracking app ⏱️

Introducing: Tie Tracker. A simple, open source and free time tracking app ⏱️

daviddalbusco profile image David Dal Busco Originally published at Medium ・3 min read

I’m happy to share with you Tie Tracker: a simple, open source and free time tracking app ⏱️.

Back Story

Last December, in between clients' projects, I had some spare time to learn new concepts. Of all of interesting subjects out there, one particular retained my attention: improving my React skills and giving a real try to Redux.

Knowing my self, in comparison to experimenting, I knew I had to implement something concrete to get to feel comfortable with the technologies, specially with Redux. That’s why I came back to my long time idea to implement a time tracking and reporting application which perfectly matches my business processes.

Nevertheless, at this point, I was still unsure to start or not this project. After all, developing an application needs a certain effort. Moreover, I was not that motivated to develop yet again another solution which would need a cloud, authentication and database.

But after much thinking about it, I finally found the last bit of motivation: I would develop the app to run entirely offline, with the help of IndexedDB, and I would give a try to Web Workers to defer “heavy” computation.

And that was it, I was all in. I started my new Ionic app and I developed my new tool 😁.

Features

The application helps track productivity and billable hours for a list of clients and projects. Each entries can be billed. It also supports miscellaneous currencies and optionally a VAT rate.

  • ✅ Simple work hours tracking
  • ✅ Assign time to clients and projects
  • ✅ Mark entries as billed

Reporting

For my company, I use a third party online accounting system to generate my client’s bill. When I send these, I join a report of every worked hours I spent on the projects for the selected period. So far, I was editing these timesheets manually but fortunately, I can now extract these on demand directly from Tie Tracker 😄.

  • ✅ Export open invoices to XLSX timesheets
  • ✅ Weekly work summary
  • ✅ Daily list of activities

Goodies

Of course I had to implement some goodies 😉. One of these is an hourly reminder, through local notifications, about a task in progress. This notably took me some iterations before being stable, mobile development sometimes needs patience 😅.

I was also a little bit concerned about the persistence of the data on mobile devices, specially regarding iOS and its reliability with IndexedDB. To overcom this concern, I implemented a backup process: once a week, the application asks the user, if she/he would like to export all current not billed hours.

  • Light and dark theme
  • Weekly backup
  • Hourly notification for task in progress (only mobile devices)

Open Source

Obviously, at least for the few of you who are reading my articles time to time knowing that I have got an “open source mindset per default”, how could it have been different? Tie Tracker is open source, licensed under license AGPL v3 and above, its source code is available on GitHub and contributions are most welcomed 🙏.

What’s Next

I have used Tie Tracker for three months now and I have billed several clients with it, therefore it already improved my daily work life. However, there are still two features I would like to develop and if there would be a public interests for an online mode in order to save the data in the cloud, I would consider to go further. Get in touch if you are interested!

To infinity and beyond 🚀

David

Discussion

pic
Editor guide
Collapse
therealgrinny profile image
Connor

As an up and coming contract web dev I've been wondering how to track billable time in a way that doesn't require deducing a flat rate fee. This is awesome!! Downloaded.

Collapse
daviddalbusco profile image
David Dal Busco Author

So cooooool! Happy to hear that, thx 😃

Collapse
therealgrinny profile image
Connor

I friggin love this design. I focus a lot more on code myself than how pretty it looks, but DANG you did a good job with this app. Smooth transitions, easy UX, minimal cognitive workload. Props 👏👏 can I endorse you on LinkedIn or something? Lol

Thread Thread
daviddalbusco profile image
David Dal Busco Author

Wow such an unexpected feedback! I always feel like I would love to do much better in terms of design, thx so much!

In terms of UX it was really important to me that the app and a task could be started with a natural position of the arm, and finger, and as fast (in two clicks) as possible.

You could for sure tag/follow me on Twitter 😃

Again thank you for your super positive feedback 🙏

Collapse
codypearce profile image
Cody Pearce

Nice, smart idea using bottom tabs for desktop and mobile, makes responsiveness easy. How was developing with Ionic?

Collapse
daviddalbusco profile image
David Dal Busco Author

I would not say "smart", I would rather say "lucky me that it actually looks good on desktop too" 😉

Well, Ionic, I'm a long time user and I'm also kind of a fan, I'm notably the organizer of the Ionic Zürich Meetup, therefore I would be a bit biased in my judgement.

What I can say, without too much giving of my opinion, is that it works perfectly well with React.

Furthermore they provide some hooks (ionViewWillEnter(() => {} etc.) which are really handy.

At first I wasn't that a fan that each components have to be explicitly imported in order to be used (which is not the case in Stencil or Angular) but once I understood that the goal was to reduce the bundle size, I was all in 😁

But the more important think to my eyes, is probably the fact that, as Ionic in built with Web Components, it just works the same as with any other frameworks or none. I've got more experience in Angular or Stencil, it makes easier to jump into and learn something new when there are some things which are actually ... not new 😁

Collapse
fultonbrowne profile image
Fulton Browne

This is amazing just download it and I am using it now. thx :)

Collapse
daviddalbusco profile image
David Dal Busco Author

So awesome! It's so cool to hear when people use the things you have developed 😃

Thank you for the feedback 🙏

And ping me if you notice any bugs or have idea of improvements!

Collapse
dotnetkow profile image
Matt Netkow

The best projects always scratch your own itch. Very well done! Congrats again.

Collapse
daviddalbusco profile image
David Dal Busco Author

The developer way of solving own problems 😉

Thank you again for your warm feedback!

Collapse
diegomgar profile image
Dieg Oto

Let's giving a try! Sometimes every some months I search alternatives to toogl, trying to find something useful, and as this is open source I can contribute with my needs :)

Collapse
daviddalbusco profile image
David Dal Busco Author

That would be neat, any contributions and ideas are most than welcomed 😃

Collapse
drozerah profile image
Drozerah

Hi! music source for the video ?

Collapse
daviddalbusco profile image
David Dal Busco Author

It comes from the YouTube free audio library

From these, I picked "I Feel Like Partying Right Now" from Nat Keefe & BeatMower