← All work/Consumer Social/Whisper
Consumer SocialiOSWeb2026

Whisper

Say it where it happened.

Whisper — Anonymous Confessions
Industry
Consumer Social
Timeline
Coming to the App Store
Team
RESA in-house
Platforms
iOS · Web
01 · The problem

What we were handed.

Anonymous social apps fail in two directions. Ask for an account and you have destroyed the anonymity that was the entire point. Skip moderation and the place turns into a sewer inside a week. Moderating server-side does not solve it either — by the time a filter sees the image, it has already been uploaded.

02 · The solution

What we built.

Identity lives on the device, so there is no email field, no password and no profile to leak. Moderation runs before anything leaves the phone: a bilingual English/Arabic text filter, Vision-framework scanning on photos, and Speech-framework transcription on audio. The map is the feed — a 3D city pitched at 60° where confessions light up the streets you are standing on.

03.5 · Mobile app

The app, screen by screen.

Three of the flows that shaped every architecture decision, rebuilt here as interactive mockups.

9:41
Whisper
Search this area
380 M AWAY2h ago
I still take the long way home just to pass your street.
Love#things-i-never-said
Map
Topics
Post
Alerts
01 · The map is the feed

A city's secrets, rendered in 3D.

The app opens on a 3D MapKit view with realistic elevation and a 60° cinematic pitch. Fly across neighbourhoods and watch confession pins light up the streets around you. Tap a pin for a preview, tap again for the full confession, or flip to list view sorted by distance.

—Realistic elevation, 60° pitch—Pin preview cards—Sort by nearest
9:41
Whisper
Map
Topics
Post
Alerts
02 · Three moves. Zero identity.

Stand somewhere. Write it. Pin it.

No account to create, no profile to curate — identity lives on the device, so there is no email field and no password, ever. Up to 500 characters of whatever you have been carrying, an optional photo, a tag and a topic. It lands on the map where you are standing.

—Device-based identity—500 characters + a photo—10 tags to file it under
9:41
Checked before it posts
All three run on your phone — nothing leaves until they pass
Text — English + Arabic
Photo — Vision scan
Audio — transcribed & checked
Pin it anonymously →
03 · Anonymous, not lawless

Nothing harmful reaches the wire.

Moderation runs on the phone before anything leaves it. Text passes a filter in both English and Arabic, photos are scanned with Apple's Vision framework, and audio is transcribed by the Speech framework and checked. Report a confession once and it vanishes from public view immediately, pending human review.

—Screened in two languages—Vision scan before upload—Report once, hidden instantly
03.6 · Web app

The operator side, built to last.

One queue for everything flagged.

An admin console handles flagged confessions and pending topics with approve and delete actions, backed by stats on reports, approvals and tag distribution. New topics need approval before they become publicly visible, which keeps the topic space from being gamed.

→Flagged and pending queues
→Topic approval gate
→Tag distribution and activity stats
🔒admin.whisper.app/moderation
Dashboard
Transactions
Reports
Settings
Flagged
18
-6
Pending topics
7
+2
Resolved today
142
+11%
3 reports
2 reports
1 report
04 · What it does

Features that matter.

A curated list. These are the features that shaped the architecture rather than the full backlog.

01

3D interactive map with realistic elevation and a 60° cinematic pitch

02

Three moves to post — stand somewhere, write it, pin it

03

No sign-up, no profiles, no usernames: identity is the device, not an account

04

On-device text screening in English and Arabic before anything posts

05

Photos scanned privately with Apple's Vision framework before upload

06

Report once and a confession is hidden instantly, pending human review

07

Topics and trending, with one like per device and no leaderboards

05 · Stack

What we built it with.

Swift
SwiftUI
MapKit
Vision
Speech
Firebase
Firestore
06 · At a glance

Where it stands.

01
0
Accounts required
02
500
Characters per whisper
03
10
Tags to file it under
04
2
Languages screened on-device