Get answers to critical business questions fast

TT.fm logo

An AWS cloud-native music app development

A hybrid of a social network and a music app

Back to showcase
Collaboration timeframe:

October 2020 - ongoing

Team size:

6

Technology:

AWS SAM, AWS Lambda, Amazon Kinesis, NestJS, React, Redux-Saga, Amazon RDS

Services:

cloud development, backend development, frontend development, payments integration, architecture, UI/UX

ABOUT THE CUSTOMER

The original idea behind the all-new Turntable is to bring people together with music. TT.fm is a social network platform that enables its users to listen to and share music with friends in real-time through a streaming service. The platform offers a virtual space for music lovers all over the world to share and discover new tunes. Besides listening and streaming functionalities, TT.fm also enables user interactions, creating virtual events, and a chat feature.

ABOUT THE PROJECT

The customer was looking for an experienced team to lead and implement their cloud-based music app development project. The goal was to design and develop both the front- and the back-end of the app, including integration with various music streaming providers, social networking components, and payment features. 

CHALLENGE

The main challenge was to integrate all of the services and components into one smoothly working application using AWS cloud. Due to a large number of various services within the app, the project was divided into repositories and our team had to take care of efficient project management. To enable an enjoyable app performance Rumble Fish experts had to perform a number of tasks using a wide range of technologies and tools. First off, we had to integrate several music providers (Apple, Spotify, YouTube, Soundcloud) into one streaming service. Next, to enable uninterrupted app functioning, we had to take care of continuous delivery deployment. Another task was to build an admin panel for application management and integrate a Stripe payment feature into the app

Keep on reading to find out the tech stack we used to meet those ambitious customers’ requirements.

SOLUTION

In this project, we were involved in both the back-end and the front-end development. The website front-end was written with React, Redux-Saga, and styled components. The back-end is a more complicated story as TT.fm is a multiservice platform with various functionalities.

  • To ensure the smooth integration of multiple services into one cohesive app, we used the AWS Serverless Application Model. SAM framework is an ultimate infrastructure-as-code tool that makes it easy to manage growing infrastructure and complex operations on cloud resources.

  • With the addition of Amazon Kinesis, our developers were able to ensure easy processing of the music streaming data in real-time to enable advanced business analytics.

  • In order to enable fast and reliable app updates without disturbing the user experience, our developers applied AWS CodePipeline and AWS CodeDeploy. This Amazon continuous delivery tool automates the process of building and releasing code updates.

  • One of the key features of TT.fm are shared rooms for listening and streaming playlists. To allow for dynamic user interactions and stable switching between different rooms, our developers used Socket.io which provides a bi-directional communication channel between the client and the server.

  • Due to its flexibility and ease of unit testing, our team chose NestJS for the back-end development. NestJS app is easily deployed as AWS Lambda and it also automatically generates OpenAPI Swagger documentation which makes front-end/mobile integration much easier. NestJS is based upon TypeScript which means it enables adding types to the variables and provides error warnings based on them.

  • Rumble Fish dev team integrated the app with the Stripe payment features. We covered monthly subscriptions and money transfers between users.

let's
collab
orate

Read other case studies

Holmes Wilson

A communication app based on local-first software principles

Anchor Leg

Finding innovative ways to keep facilities and establishments safe

Let’s work together on something awesome!