Contact us

Web, mobile and Embedded Cycling Solution

Advanced Interactive Indoor Cycling Solution that Empowers Users with Unique Training Experience

Web, mobile and EmbeddedCycling Solution

Client:

SportsTech Company

Location:

Country flag

Norway

| City flag |

USA

Company Size:

150+ Employees

Technologies:

.NET 6

EF Core

Redis

Angular

AngularMaterials

CASL

IdentityServer4

Microservices

EventHub

ServiceBus

RabbitMQ

AMS

Goland

FFmpeg

PWA

Envoy

Azure

Matomo

Keycloak

Grafana

Chocolatey

AzureDevOps

WebHooks

G Suite APIs

WPF

iOS

Android

Flutter

InfluxDB

MS SQL Server

SendGrid

SignalR

About
The Project

This SportsTech ecosystem includes web-based club and instructor resources for creating, scheduling, and overseeing indoor cycling classes, along with member accounts incorporating user histories and community interaction. The system is powered by in-studio software and hardware that utilizes precise power measurement and ANT+ capabilities, resulting in an immersive and dynamic indoor and outdoor cycling experience. Following the solution development, our customer’s startup platform got acquired by a renowned cycling hardware manufacturer. This achievement propelled them to the forefront of the global market, solidifying their position as a leader in the field of cycling training.

Quotation marks Quotation marks

Having a team of experienced software developers has been just absolutely essential to the success of our projects. I’ve been working with Leobit for the past three years, and I can’t imagine doing it any other way. I can always rely on them to get the job done, and I always know that I’m going to get quality work.

Cameron C.

Director of Product, SportsTech Company

CUSTOMER

In 2008, a group of Norwegian developers and sports enthusiasts founded a startup with a mission to revolutionize the cycling experience. Cutting-edge visualization technologies and having us as a tech partner enabled them to create an immersive cycling platform, featuring virtual routes, competitions, and challenges. In 2017, a leading US-based indoor cycling hardware manufacturer recognized the software's potential and acquired the Norwegian-developed solution. Today, the customer's company is a global market leader in interactive cycling, due to their innovative offerings.

BUSINESS
CHALLENGE

Prior to our cooperation, our client encountered several business challenges:

1. They struggled with system scaling, as their monolithic architecture couldn't handle the increasing number of clients.

2. Also, the startup faced challenges with their current outsourcing software development provider, encountering issues of poor results and communication problems.

3. As the customer is in a highly competitive market, they need to act fast and innovate. That's why they decided to find a new software solutions provider to improve their existing software and add new features, as well as create new products for them.

Why
Leobit

The client chose Leobit for our strong expertise in .NET and our capability of tackling the most complex embedded solutions. As a company with SportTech being one of our key industries, we boast a well-established track record of successful projects within this domain. The industry-specific knowledge positioned Leobit as an ideal candidate to cater precisely to the client's requirements, guaranteeing a successful development of the solution.

Project in-detail - Scalable

Project
in-detail

Project in-detail - Scalable

The system underwent a transition to a microservice architecture, which involved reorganizing it into separate components known as the Cloud and the Studio. This architectural shift allowed for more modular and independent services, enabling better scalability, flexibility, and ease of maintenance.

The Cloud component of the solution encompasses web and mobile applications that are specifically designed for administrators, instructors, and members, providing efficient system management and seamless access. Administrators have full control through the admin panel, where they can create and customize classes, including cycling plans and video integrations for members to watch during sessions.

The user panel offers personalized activities, performance tracking, detailed statistics, and leaderboards. It is integrated with platforms like Strava and TrainingPeaks to easily import and sync cycling data, performance metrics, and other data. Accessible on mobile and desktop, the user panel provides members with flexibility in accessing the platform. The Studio component provides specialized software for members and instructors within the sports club environment. Each room is equipped with projectors or TVs, displaying relevant information such as session plans, and user performance. Instructors have tablets to observe and guide members, enabling real-time communication and enhancing the training experience for both parties.

The Spotify integration allows administrators to curate and customize workout playlists tailored to specific training sessions. Our system utilizes Spotify's robust API to establish a secure connection and access the extensive music library. By synchronizing the workout plan with the corresponding songs, users can enjoy a cohesive and engaging workout experience.

Within the admin panel, we have successfully implemented a range of integrations to accommodate the specific needs of sports clubs seeking to utilize external systems for user management and booking functionalities. The key integrations include MindBody, ZingFit, MarianaTek, and FitMetrix.

Our system leverages advanced tracking technology to monitor and analyze a wide range of performance metrics during physical activities. These metrics include real-time tracking of heart rate, speed, power output, and distance covered. By capturing and analyzing these data points, our system provides users with comprehensive insights into their workout sessions, allowing them to track their progress.

The Remote Control functionality serves as a vital tool for instructors within the studio during classes. The Remote Control feature leverages data synchronization mechanisms and secure communication protocols to collect and transmit real-time performance data from each user to the instructor's tablet. The screen dynamically visualizes the performance data of all users, enabling instructors to monitor and analyze their progress simultaneously.

In response to a club's request, we developed a solution called Class Sharing to enable an instructor from one club to conduct a session and broadcast it live to multiple other clubs. This feature allows the instructor to access a dedicated screen displaying the performance metrics of all participating users. To ensure seamless data visualization, we implemented several integrations, including Time Series DB for efficient data storage, Redis for reliable data caching, and Activity Storage for managing activity-related information.

After a user's cycling session, they will receive a customized email containing detailed statistics of their performance. By utilizing SendGrid's robust capabilities, our system ensures reliable and efficient email delivery, while also allowing for customization of the email's visual design.

project-in-detail

Cloud Migration

Initially, the project was hosted on a virtual machine using Internet Information Services (IIS). The transition occurred when they migrated to the Azure infrastructure. We orchestrated a migration to the Azure infrastructure, with Azure DevOps playing a pivotal role in comprehensive management. Additionally, we established distinct services, namely the Cloud and Studio, to handle different project components.

This shift enabled the implementation of a more sophisticated solution for securely storing settings and diverse data. It facilitated the configuration of Continuous Integration/Continuous Deployment (CI/CD) and allowed for the editing of pipelines—specifically for builds and releases—within the same portal. We also integrated a test environment, significantly streamlining processes. This allowed QA teams to deploy specific components relevant to their tasks autonomously.

As the project evolved, we prioritized the inclusion of microservices over expanding the core project. Consequently, we transitioned to Linux-based machines and adopted containerization through Docker technology.

project-in-detail

Effortless Bike Booking Option

The system offers users the ability to independently book a bike in the sports club without requiring assistance from an administrator at the reception. The application boasts a Progressive Web App (PWA) architecture, offering the flexibility of booking anonymously or logging in using their existing account through web browsers, smartphones, and tablets in sport clubs. Once a user selects a bike but delays finalizing the booking, that particular bike is temporarily reserved for a designated period, preventing other bookings from different places and systems. The system leverages SignalR to provide seamless real-time updates.

To ensure robust security measures, the system incorporates a comprehensive two-factor authentication system. This involves a dynamic 6-digit verification code and a device validation process. Any new device seeking access must undergo approval by administrators, minimizing potential security vulnerabilities.

project-in-detail

Live Streaming for Remote Classes

We have implemented a technically advanced Live Streaming feature that enables instructors to conduct classes remotely from their own homes, while users can access and participate in these classes from the sport clubs. The Live Streaming feature relies on the Wowza, a robust platform known for its seamless handling of unified streaming media. It ensures that users attending classes in the club, receive real-time guidance and instruction from the remote instructor.

Utilizing the capabilities of CDNs and strategically replicating content across different geographic locations, the Live Streaming feature accomplishes an impressive combination: it guarantees top-notch performance, and minimal delay. Together, these elements play a vital role in delivering a satisfying user experience.

project-in-detail

Customized Screen for Performance Visualization in Group Cycling Sessions

A prominent sports club in the USA asked us to customize a screen that visually showcases the user's performance during group cycling sessions. Embracing their requirements and design specifications, our team went above and beyond to enhance the screen, surpassing their initial expectations. To address the customer's desire for an animated user interface (UI), we employed a native approach during the implementation phase, instead of using video technologies. This decision yielded a dynamic and highly optimized screen, guaranteeing seamless and efficient performance.

project-in-detail

The Advanced Competition Mode

The Competition Mode feature is designed to facilitate competitive events among participants engaged in cycling activities. The system aggregates and analyzes the data, allowing for accurate performance tracking and comparison among participants. It utilizes advanced algorithms to determine rankings and visualize the results on screens in real time. The user interface for the feature was developed using WPF (Windows Presentation Foundation), a powerful framework that provided a rich and interactive graphical display of the competition data. For seamless communication and data exchange between the cycling equipment and the system, our team utilized BLE (Bluetooth Low Energy), ANT+, and WASP (Wireless ANT+ Sport Protocol).

project-in-detail

Mobile App for Solo Indoor Sport Activities

During the COVID-19 pandemic, when physical sports clubs were forced to close, a strategic decision was made to address the needs of users seeking solo indoor activities. We embarked on developing a mobile app that allowed users to download and select their preferred sports activity for virtual classes, including options such as yoga and other fitness classes. To enhance the experience further, we added a feature that allows the user to connect the app to their indoor bicycles. Recognizing the urgency to provide a timely solution for users unable to attend physical sports clubs, we efficiently developed this app within a month. Leveraging Flutter, a cross-platform framework, we ensured the compatibility of our app with both iOS and Android devices.

project-in-detail

Embedded Solution for Outdoor Cycling

To enhance cyclists' performance, we've designed an embedded system. Our bike computer, equipped with a 2.7’’ LCD display and an integrated accelerometer, provides real-time cadence measurement, facilitating concurrent power calculations.

Whether cycling on the road or trail, this device effortlessly presents users' riding data on a high-contrast, high-resolution display, making crucial information easily accessible. Post-ride, the distinctive ride file enables swift workout analysis, displaying a visual overlay of the prescribed workout and actual ride data—accessed through a provided link. Through the utilization of this link, the system dynamically adjusts, incorporating automatic FTP and Training Zone tracking to keep users at the forefront of their performance.


The Journey
Behind Client's Success

Team:
1 Team Lead
4 Software Engineers
4 Unity Engineers
1 QA Lead
3 QA Engineers
1 Project Manager
1 Business Analyst
Phase 1
Phase 2
Phase 3
Phase 4
Seamless Live Streaming
Real-time Performance Monitoring through Remote Control Feature
Mobile App for Indoor Activities
Personalized Performance Reports
The Advanced Competition Mode
Integrating External Systems
Spotify Integration
Cross-Club Session Broadcasting
Monitoring Key Metrics
Performance Visualisation
Bike Booking Option
Optimizing System Architecture


Completed workouts

2.5M

Club rooms in the system

445

KM of total workout distance

47M

KCal burned

806M

Technology Solutions

  • Created web and mobile applications for users to engage in group and solo indoor activities.

  • Applied a microservices architecture to enhance the performance and scalability of the solution.

  • Incorporated advanced streaming technologies and optimized video transmission to develop live streaming feature.

  • Utilized WPF, BLE, ANT+, and WASP technologies for wireless connectivity.

  • Integrated Strava and TrainingPeaks to seamlessly synchronize cycling data and performance metrics.

  • Integrated MindBody, ZingFit, MarianaTek, and FitMetrix within the admin panel, enabling efficient user management and booking functionalities.

  • Implemented remote control functionality for instructors to monitor and analyze real-time performance data of users during classes.

  • Developed a solution that enables simultaneous broadcasting of sessions led by instructors across multiple clubs.

  • Integrated Spotify to customize workout playlists and SendGrid to generate customized emails containing statistics of user activity.

Value
delivered

  • Acquisition of the client's startup by a leading US-based indoor cycling hardware manufacturer.

  • The client entered the global market with a solution that is now being utilized in over 150 sport club enterprises across multiple countries, including the USA, UK, Canada, Germany, Norway, Netherlands, Denmark, Sweden, Australia, China, Japan, Singapore, and more.

  • Growing the number of end users by more than 15 times, from 20K to 350K.

Our client says

Cameron C. | Director of Product, SportTech Company

Cameron C.

Director of Product, SportTech Company

Cameron C. | Director of Product, SportTech Company

Cameron C.

Director of Product, SportTech Company

Clutch review