Ozan Kılıç logoOzan Kılıç

← Back to gallery

2025Social · Website · Branding · iOS · Android

TealSky

A fresh social space for people who live online.

TealSky — cover
Role
Solo designer, developer & operator
Client
Own product
Year
2025
Scope
Social · Website · Branding · iOS · Android

A privacy-first social space, designed and shipped solo across web, iOS and Android.

Context

Context

TealSky (tealsky.app) is a fast, community-driven social feed — custom feeds, niche communities, quick posts, privacy-first by default. It began as Ozzy's own social space and grew into a full three-platform product: a web app (the source of truth for all UI and state) plus native iOS and Android shells. Everything — product design, front end, Cloud Functions backend, brand, and day-to-day moderation — is one person.

The problem

The problem

"The world does not need another social network" is the honest starting objection. TealSky's answer is a privacy stance and a communities-first model rather than an algorithmic attention feed.

Approach

The approach

The core architectural bet is a hybrid: one web codebase carries 100% of the UI and state; thin native shells add only what the web can't do well — push notifications, badges, offline, native bridges. This is the same shell pattern Ozzy re-used across products, chosen so a solo maker can ship one feature once and have it appear on three platforms.

TealSky feed and communities
Fig 1 — feed / communities (replace with a real product screen)

Process

Process & iteration

A concrete recent iteration: a third post visibility — "Günlük" (journal) — private-to-author, never fans out to the timeline, invisible on other profiles, 404 to non-authors on a direct URL. The clever part was doing it without touching the fan-out or notification Cloud Functions, by simply never creating the announcement document. That is the kind of small, surgical solo-dev decision worth telling.

Constraints

Constraints

Solo, across three platforms, at near-zero infra cost (Firebase free tier), with a JS↔native bridge contract that must stay backward-compatible for old installed shells. Moderation and safety rest on one person.

Outcome

Outcome

Feed
Custom feeds
Community
Communities
Journal mode
Private "Günlük" visibility

Credits

Design, Build & Operate
Ozan Kılıç