~/projects/convose $ cat case-study.md
CASE STUDY — 07

Convose — Interest-Based Chat

Frontend for a mobile chat app connecting people by shared interests, in real time, across iOS and Android.

React Native Developer 2019 — 2020
React Native
01 — The Problem

Chat UIs live or die on feel

Messaging apps are judged against the best in the world. Lists must scroll at 60fps through thousands of messages, keyboards must never jank, and presence must feel alive.

bash
$ npx react-native run-ios --configuration Release
bundling 1,842 modules
chat list: virtualized, inverted, 60fps
typing indicator latency: live
02 — The Approach

Virtualized everything, native where it counts

Placeholder: describe inverted virtualized lists, image caching, keyboard handling, and the interest-matching UI.

tsx
 1<FlatList 2  inverted 3  data={messages} 4  windowSize={7} 5  keyExtractor={(m) => m.id} 6  renderItem={({ item }) => <Bubble msg={item} />} 7/>
03 — The Architecture

RN client over a real-time backend

The React Native client consumes a real-time messaging backend; the frontend owns presence, chat, discovery, and onboarding flows.

iOS Android RN App Realtime API
04 — The Results

Shipped to both stores

Placeholder: add store ratings, user counts, or retention impact.

0
platforms, one codebase
0%
real-time message delivery
0s
cold-start to chat (placeholder)