MERMER

Case study · Release candidate

Tayfa

Voice rooms for friend groups, on a server you run yourself.

macOSWindowsiPhoneElectronReactTypeScriptSwiftUILiveKit

Tayfa on the desktop: the room list on the left, a film playing in the middle and the channel’s chat on the right. The title bar reads Tayfa.
A room in Tayfa: friends in voice, a film on screen, the chat beside it.
A Tayfa voice room: five friends in a grid of tiles, the one speaking outlined in green.
A voice room.

The problem

Most group chat apps put everyone on one company’s servers, under one account system. For a small group of friends that is more than they need, and the room is never quite theirs.

The idea

A hangout for one small community: voice, screen share, chat and a few shared activities, in one desktop app. The group’s admin runs the backend on their own server and sends invite links. Accounts belong to that server, and the code has no built-in server or shared account.

What I built

A desktop app for macOS and Windows in Electron, React and TypeScript, and a native iPhone companion in SwiftUI. Accounts and chat run on an unmodified Stoat backend, and voice and video on LiveKit. Tayfa’s own services connect the two and run the shared activities, among them a Kıraathane room with board-game tables.

A one-command installer sets up the server on a Linux VPS. The interface is in English and Turkish.

My role

All of it, on my own: product, design, code and releases. I work spec-first with AI coding agents and keep separate notes for product, QA, design and security. About one commit in four landed between midnight and six in the morning.

Facts

Status
Release candidate
Latest version
0.1.18-rc.32 (22 Oct 2026)
Commits
907 (all branches, 8–24 Oct 2026)
Releases
23 release candidates since 14 Oct
Licence
MIT, open source

Stack

Links

View in the city →