Back to Projects
Case StudyTechnology

Up Project

Up is a cross-platform social discovery app (Android/iOS) that connects people through location-based events and real-time messaging. The goal was to build a single product unifying three experiences — a live discovery map, a polymorphic social feed, and a full-featured chat system - on a shared Kotlin Multiplatform codebase backed by Supabase. The outcome is a production-grade app that renders 100k+ map markers at 60fps via PostGIS clustering, supports offline-first 1-on-1 and group messaging with realtime presence, and achieves 90% fewer API calls and 95% lower WebSocket usage through aggressive batching, caching, and database-driven RPCs.

CategoryTechnology
Tech StackKotlin Multiplatform, Compose Multiplatform, Supabase (Postgres, PostGIS, Realtime, Storage), MapLibre, SQLDelight, Koin
Up Project

Tech Stack

Kotlin Multiplatform · Compose Multiplatform · Supabase (Postgres, PostGIS, Realtime, Storage) · MapLibre · SQLDelight · Koin

Highlights

  • Real-time chat
    1-on-1 and group messaging with an offline-first SQLDelight cache, message requests, and WebSocket-based presence
  • Interactive map
    MapLibre clustering rendering 100k+ markers at 60fps, powered by a single PostGIS get_markers_in_bounds RPC
  • Unified social feed
    Polymorphic timeline (events, activities, posts) via a single get_latest_feed RPC, featuring infinite scroll and optimistic likes
  • Content creation
    Community events (with paid ticketing), personal activities, and posts with an in-app image cropper
  • Authentication & security
    Google Sign-In, secure email change flow, automatic JWT refresh, and RLS-enforced privacy
  • Scheduled Edge Functions
    Daily cleanup job reclaiming ~475 MB/month of orphaned data
  • Performance optimizations
    90% reduction in API calls via batch operations and 95% lower WebSocket quota usage for presence updates
  • Architecture
    MVVM + Repository pattern with 27 ViewModels and 24 repositories, using expect/actual for Android and iOS

We value your privacy

We use cookies to enhance your browsing experience, serve personalized ads or content, and analyze our traffic. By clicking "Accept All", you consent to our use of cookies. Read more