One app, three faces
Most “kids’ messaging” apps are a single grown-up interface with a few buttons greyed out. Shoal takes the opposite approach: the interface itself changes to match the child using it. We call these skins, and there are three. A family admin chooses one per child — and because it’s admin-set, a child can’t quietly switch themselves onto an older one.
Underneath, nothing changes. The same conversations, the same contacts, the same encryption and the same family oversight apply across all three skins. A parent on Ocean and a pre-reader on Reef are in the very same chat — each just sees it in the shape that fits them.
Reef — for kids who can’t read yet
Reef strips messaging back to what a pre-reader can use on their own. There’s no keyboard and nothing to type. Instead there are big, tappable faces of the people they’re allowed to talk to, and three things to do with each: send a voice note, send a video, or call.
When a grown-up sends a written message, Reef speaks it aloud — so a child who can’t yet read a word still gets the message. “We’re leaving in five minutes” arrives as a voice, not a wall of text they can’t decode.
Cove — for readers finding their feet
Cove looks and works much like the standard app. Your child reads and types like everyone else; the differences are quiet ones, pitched at a newly independent reader rather than a teenager.
The one you’ll notice first is Take a moment. If a message your child is about to send trips a word you’ve flagged, Cove shows a soft “Take a moment?” prompt before it goes. It’s a nudge, not a wall — one tap sends the message anyway. The point isn’t to block the child; it’s to build the half-second of reflection that older messaging never teaches. It draws on the same word lists you manage in moderation, so it fits the controls you’ve already set rather than adding a new place to configure.
Ocean — the full app
Ocean is the complete Shoal interface — every conversation, every control, family oversight and settings. It’s what teenagers and adults use, and the baseline the younger skins are shaped from.
Why we did it this way
We were careful about two things.
First, the skins are real interfaces, not a “mode”. Reef isn’t Ocean with bigger buttons; it’s a different set of screens built around voice and video, because that’s how the youngest children communicate. Treating them as first-class users, rather than as adults with training wheels, is the whole point.
Second, we don’t badge the skins by age inside the app. A child who is told they’re in “Kids Mode” will, reasonably, want out of it — and the moment they switch themselves to the grown-up interface, every protection the younger skin gave them is gone. The skins are named after places in the sea, not school years, precisely so that moving between them is something a parent decides as a child grows, rather than a label a child is in a hurry to shed.