Interactive 3D scene: a figure facing a wall of televisions

Our cases

Stride

    Explore

    From idea to reality

    I build desktop applications and web platforms — mostly open source, all of them things I use myself.

    Have an Idea?

    Lets collaborate!

    The maker

    [ TAWNY ]

    SE Samet Ege

    Samet Ege

    • ( Backend )
    • ( Frontend )
    • ( Desktop app )
    • ( Infrastructure )

    Tawny

    About the app

    • Addresstawny.com.tr
    • BackendPHP 8 · MySQL
    • FrontendVanilla JS — no framework
    • DesktopElectron · Windows installer
    • Real timeHTTP polling · WebRTC · LiveKit SFU
    • Sign-inEmail · Google · GitHub · Steam
    • InterfaceTR · US · RU · CN · SE

    Everything that holds a community together, written from scratch. Servers and channels, roles and permissions; voice and video calls, screen sharing, end-to-end encrypted direct messages. It runs at tawny.com.tr in the browser, with a Windows build to install.

    Visit the project

    Built with. PHP 8 and MySQL underneath, and no framework on the surface — plain JavaScript split into its own namespaces. The desktop build comes from Electron: a Windows installer, automatic updates, a system tray, a global push-to-talk key, and game activity read from Steam.

    Real time, no socket. No WebSocket anywhere. Messages, calls and notifications each poll over plain HTTP on their own interval, and polling stops when the tab goes to the background. Voice and video go straight between devices over WebRTC; a crowded room hands off to a LiveKit SFU. Noise suppression runs RNNoise compiled to WebAssembly.

    Encrypted and governed. Direct messages are encrypted on the device before they are sent, and the key never leaves it — the server cannot read what is written. On servers, a 23-bit permission mask decides the rest: roles add up, then each channel overrides them with allow, deny or inherit.

    000

    Loading the room