CrowdStreaming: a proof-of-concept live streaming app for rally fans
ScalaCode built a proof-of-concept mobile app for a UK client's crowd-driven rally streaming platform. Fans at an event record and upload video, moderators approve it, and remote viewers watch the approved streams live on Android and iOS.
A UK client bringing rally fans closer to the action
A client based in the UK asked ScalaCode for a proof of concept of a crowd-driven video platform for rally sports. Fans at an event would record and upload video, and fans elsewhere would watch it as live streams. The app had to let users switch between recording and watching, give moderators an approval console, and run on Android and iOS.
What made crowd-sourced live video hard
Real-time processing
Shooting, uploading and live streaming had to flow into each other without breaks.
Video from many devices
Footage from different phones needed consistent quality and resolution.
Two kinds of user
Fans at the event needed a reason to record, and remote viewers needed a good way to watch.
Moderation
Moderators needed tools to review, approve or reject clips quickly.
Event-day traffic
The backend had to cope with heavy load during live events.

A Flutter app with an AWS video pipeline
A single Flutter codebase runs the mobile app. Behind it sit a Node.js and Express backend on MongoDB, AWS video services, and a Laravel console for moderators.

- 01
Two-mode mobile app
One toggle flips the app between Shoot & Upload and View Live Streams, and first-time users get tooltips explaining each mode.
- 02
Consistent recording
Video settings are preset, so every clip is shot in landscape at high quality. Users can trim and edit their clips while offline.
- 03
Video processing
Each upload goes through AWS Lambda and Amazon Elastic Transcoder, which is why streams play back at the same quality.
- 04
Live streaming
Video is stored in Amazon S3, and Amazon MediaLive handles the live streams.
- 05
Moderator console
Moderators use a Laravel web console to approve or reject each video before it goes into a live stream.
- 06
Real-time sync
Socket.io keeps every user's data in step, and sign-in runs on Firebase Authentication.
A working proof of concept in three months
The client got a working MVP for Android and iOS that records, moderates and streams rally footage. Ruairi, the client, says the project was completed within three months, on time and on budget, and gave the product a solid foundation for its next steps.
from one Flutter codebase
moderated video streams
What CrowdStreaming runs on
Flutter
Node.js with Express, Laravel APIs
MongoDB
AWS Lambda, Amazon Elastic Transcoder, Amazon MediaLive, Amazon S3
Firebase Authentication, Socket.io
Plan a build like CrowdStreaming for your business
- 30 minutes with the ScalaCode team
- What is realistic, what it costs and how long it takes
- You decide afterwards whether to build with us



