An efficient and convenient communication platform for sports clubs, amateurs, and professionals.
With years of experience in sports tech, MBicycle’s team can surely say that sports applications are finding more engagement with users. This trend is facilitated by the popularity of healthy lifestyles, social networks, and the technologies that permeate all areas of human life. Proper community app development could bring all these aspects together in one application for sports amateurs and professionals alike.
The main idea of this German-based startup was to create an online space for the members of different sports organizations, such as fitness centers, gyms, and professional sports clubs, where they could network and follow each other’s activities as well as stay updated on their clubs’ life. The task was to create a full-featured web communication portal along with a convenient mobile app for device-agnostic access to the service.
Thanks to our previous experience of developing Sports Station, ShotTracker, and a few other sports applications, the MBicycle team could provide the client with a detailed blueprint and satisfying estimates. Once the client approved the team’s final line-up, we started our work on this solution.
Our team worked together on both the web and mobile applications to provide clubs in different sports — such as yachting, football, basketball, fitness, bodybuilding, etc. — with a handy and efficient way to engage with their members.
Both the web and mobile versions of the solution supported full-featured access for both sports clubs and their members. Registered sports clubs could promote their offers and keep their customers in the loop about their activities. Club members could follow their favorite sports clubs and other members, discuss any issues with the club administration through group or personal chats using the in-app messenger, and leave feedback. We also added the My Clubs section, where users could read the story behind a particular club and learn more about the clubs they subscribed to.
The Web App
To deliver the web version of this sports community app, our team carried out the following tasks:
Developing a microservice-based architecture, which was necessary for scaling the service in the future and avoiding potential bottlenecks caused by high numbers of concurrent chat participants. We used the following to get this task done:
- Single Sign-On (SSO)
- WebFlax API Gateway
- User API
- Notification API
- Messenger API (WebSocket + REST)
- Structure API
- FileStorage API
Structuring user roles. We created the structure of the user roles to include system administrators and club administrators, as well as the hierarchy of club members depending on the type of their organization (for example, managers of football or basketball teams within the same clubs). We also set up role-based access and designed personalized interfaces according to this user role structure.
Implementing a messenger. We developed a proprietary messenger core using WebSocket and implemented a user messaging system based on it. We also applied certain architectural approaches in order to simplify the scaling of the messenger in the future, using synchronization between services.
The Native Mobile Applications
Our mobile app development outsourcing team started by implementing the registration functionality, where users fill in their personal information (age, gender, address), adjust privacy settings, define their favorite teams and sports. At this step, the MBicycle developers added user validation, animations, and all the necessary fields for each screen.
Chats became one of the fundamental features of the solution. It enabled users to create chats to communicate with their club management or other members of their club. Club admins can also create group chats either in the mobile app or through the web interface to share their news and achievements, get feedback on their work, and inform club members about any changes to upcoming events and other activities.
At the discussion and documentation stages, our analytical team singled out two main directions of the development process. One part of the team created the web version of the project, while the other part focused on the mobile applications for iOS and Android with the messenger as the main feature, assuring convenient access to a variety of features for registered club members.
Our team was following the Agile/Scrum method with daily meetings. The entire workflow was divided into two-week sprints. Our team also developed a continuous integration/content delivery (CI/CD) system for automating builds. For this purpose, we used Jenkins, Docker, TestFlight, and Fabric.
The client’s team included:
- Tech lead
- 2 backend Java developers
- iOS developer
- Android developer
- Frontend VueJS developer
- Project manager
- Business Analyst
- 2 QA engineers
Java, Kotlin, Swift
Libraries & frameworks
Spring Framework, Spring Cloud, Android SDK, Glide, iOS SDK, GoogleMaps SDK, Fabric, Crashlytics, Jenkins, JUnit, Docker, Apache
After four months of well-knit cooperation, the MBicycle team provided the client with a server-side solution that was completely ready for operation and scaling. We also delivered an administration panel on the client-side as well as two native iOS and Android mobile applications with robust functionality that met all the original requirements.
At the moment, we are working on converting the server-side part into a ready-made SDK for the client to differentiate their commercial offering and start distributing this packaged solution to other interested companies.