

Surf
A social network with feeds, short video, messaging, and live, on web, iOS, and Android.


Surf has feeds, posts, shorts with a video editor in the browser, messaging and calls, live streaming, creator analytics, subscriptions, and family controls. One Next.js codebase runs the web app and the iOS and Android apps.
- Role
- Product, design, and engineering
- When
- 2022–now
- Stack
- Next.js, React, TypeScript, Supabase, Capacitor
- Links
- surfsocial.org
823klines of TypeScript
24,249tests
1,935database migrations
5,969commits this year
The problem
A social network has to get feeds, video, messaging, safety, and scale right at the same time, and every part has to feel fast.
The approach
This is the fourth version, rebuilt on Next.js and Supabase. Database access rules are tested against a live database, with type checks, unit tests, and end-to-end tests in CI.
Results
- 150+ routes on web, iOS, and Android
- Shorts, live streaming, and calls
- Moderation and family controls built in



Surf Messenger
Next project

