Sport: A Beautiful Open Source Consumer App
Xamarin employees love a good competition! During breaks, we love to challenge each other to a few games of ping-pong or darts. We needed a way to track the best players for each game in our office, so we thought it would be a great opportunity to develop an app to solve the issue. Sport is a leaderboard tracking app built with Xamarin.Forms and Microsoft Azure that showcases beautiful, animated modern design. Athletes can join leagues, get ranked, and challenge other athletes to move up the ladder. Sport is completely open-source, so you can get started creating your own office leagues today!
Beautiful UIs with Xamarin.Forms
Sport was built using Xamarin.Forms, which allows you to create native UIs from a single, shared codebase. I was able to share an amazing 93% of my code between iOS and Android, massively increasing my productivity as a developer. Sport also takes advantage of one of the most popular features of Xamarin.Forms, the ability use your existing XAML experience to construct UIs, to build a beautiful, cross-platform user interface. To provide further customization, I also took advantage of Xamarin.Forms’ styling engine to enforce a consistent visual theme throughout the application; leagues are randomly assigned a themed color at runtime.
While Xamarin.Forms allows you to share tons of code and create cross-platform UIs, you still have full access to each platform to render native views and expose platform-specific functionality. One of my favorite features of Sport is its use of animations to create a delightful, playful (get it!?) user experience. Xamarin.Forms has many other features that made developing Sport a breeze, such as built-in support for the MVVM pattern, a MessagingCenter, and a DependencyService.
Powerful Backends with Azure App Service
It’s 2016, and C# is everywhere – the client and server. Sport is powered using Azure App Service, which provides a C# backend with authentication, cloud storage, push notifications, and more. App Service makes it very easy to integrate with existing OAuth services, such as Google (which Sport uses), Microsoft, Facebook, and Twitter. League data is stored in the cloud and synced across user devices to ensure a seamless experience, regardless of device. Finally, Sport uses Azure Notification Hubs to provide templated push notifications for both iOS and Android. Sport’s backend is completely open source, so you can dive into and see just how easy it is to add a powerful backend to your Xamarin apps.
Start Challenging Coworkers Today
To bring Sport to your office, simply download the source, compile, and run. It’s that easy! We have provided keys to an existing backend, though the backend is also completely open-source if you wish to roll-your-own as well. If you love Sport, you may also be interested in other great open source apps built with Xamarin.Forms, such as the XamarinCRM and MyShoppe.