← All work

(04) Course project · Mobile Applications · Apr 2026

IcesiScore: Serverless Real-Time Sports Platform

Serverless AWS backend broadcasting live scores over WebSockets through an event-driven pipeline, plus a Flutter app with Clean Architecture and BLoC.

The project

A real-time platform for university sports. The backend is serverless: Python Lambda functions behind API Gateway REST and WebSocket endpoints, Cognito JWT authentication, RDS PostgreSQL for relational data and DynamoDB as the WebSocket connection registry.

Live scores follow an event-driven path: an event is posted, a Lambda publishes to SNS, a broadcaster Lambda scans the registry and pushes to every connection, cleaning up stale ones on GoneException. The Flutter app uses Clean Architecture with GetIt and BLoC, and Terraform provisions all of the AWS side.

Highlights

  1. 01Event-driven broadcast: Lambda, SNS, DynamoDB and WebSocket postToConnection
  2. 02Stale connection cleanup on GoneException
  3. 03Cognito JWT authentication
  4. 04Flutter with Clean Architecture, GetIt and BLoC
  5. 05All AWS infrastructure in Terraform