Toggl iOS/Android app

Aug 31, 2016

The Toggl mobile client is a project made-up by two UI side clients, one for each system (iOS or Android) and a library to share the common business logic. This project is fully implemented using C# and Xamarin platform and cross-platform techniques. The clients serve as complement to the Toggl’s main product, a web based time tracker.

Architecture

As most of Xamarin projects, the Toggl mobile clients have a common library with the follow content:

The most complex part of the whole project is the remote data synchronization. The Toggl app has offline capabilities and collects user input without network connection. Once the connection is restored, the clients execute the conflict resolution algorithm in order to drive server-side and client-side data to the same state. The principle “last writer wins” is used.