Golub SoftworksGolub Softworks
Selected Full-Stack Platform

Midnight Insomnia

Where night owls meet after midnight

View live site
End-to-end product development
2026 – present
Kotlin MultiplatformComposeReal-time ChatKtorWebSockets
THE CHALLENGE

Most chat apps are always on and generic. Midnight Insomnia needed a distinct community mechanic — scarcity by time — without sacrificing real-time reliability, abuse resistance, or trust around auth, billing, and account lifecycle.

WHAT WE DELIVERED

A production-grade full-stack platform.

Midnight Insomnia is a Kotlin Multiplatform social chat app built around a simple constraint: the room only opens between 00:00 and 04:59 in the user's local timezone, with the server as the authority on access. Outside those hours, users see a countdown, can opt into a midnight reminder, and return when the room opens. Inside the room, users chat in real time over WebSockets in a single ephemeral global channel with profiles, stats, achievements, reactions, and optional premium upgrades.

We built an end-to-end Kotlin Multiplatform product: shared Compose UI for Android and iOS, a Ktor WebSocket backend, MongoDB for user and stats persistence, and Firebase for authentication and remote config. Chat is WebSocket-first with server-enforced midnight gating, ephemeral in-memory messages, rate limiting, and server-verified premium entitlements.

SCOPE & FEATURES

What makes it work in the real world.

Platforms
AndroidiOS
Key capabilities
  • Midnight-only chat window with countdown and reminder UX
  • Real-time global room with ephemeral WebSocket messages
  • Profiles, streaks, achievements, and emoji reactions
  • Premium upgrades for custom names, avatars, and longer messages
  • Blocking, rate limiting, and account deletion flows
VISUALS & EXECUTION

Built for real operations, not demos.

Kotlin Multiplatform with shared Compose UI for Android and iOS

Ktor WebSocket backend with server-enforced midnight access gating

MongoDB for profiles, stats, and achievements; ephemeral in-memory chat

Firebase Auth with Google, Apple, and guest sign-in

Production deployment on Golub Softworks infrastructure

KEY OUTCOMES
Android + iOS
Compose Multiplatform clients with shared chat flows
00:00–04:59
server-enforced local-time chat window
Production
Ktor backend deployed at midnightinsomnia.golubsoftworks.com
TECHNICAL HIGHLIGHTS

How we made it work reliably in production.

  • Kotlin Multiplatform with shared Compose UI for Android and iOS
  • Ktor WebSocket backend with server-enforced midnight access gating
  • MongoDB for profiles, stats, and achievements; ephemeral in-memory chat
  • Firebase Auth with Google, Apple, and guest sign-in
  • Production deployment on Golub Softworks infrastructure

Building something that needs to actually work in the real world?

Start a conversation