SOSify

A personal safety app I've been thinking about since I was a kid — now live on the App Store.

SwiftSwiftUINestJSPostgreSQLiOSApp StoreTwilio
SOSify

Where This Started

I've had this idea in my head since I was maybe 12 or 13. The thought was simple: what if you could hold your phone and it would alert someone when you let go? Like a dead man's switch, but for personal safety. I kept thinking about it over the years, sketching ideas in notebooks, but never had the skills to actually build it.

Fast forward to this year — I finally had enough experience with iOS development and backend work to make it real. SOSify is now live on the App Store, and honestly, shipping something I've been dreaming about for over a decade feels pretty unreal.

How It Works

The core interaction is deliberately simple and physical. You hold your finger on the screen, which arms the app after 1.5 seconds. When you release, a 5-second countdown starts — with an audible beep and torch flash so you can cancel if it was accidental. If the countdown finishes, SOSify sends your GPS location to all your emergency contacts via WhatsApp or SMS.

The idea behind the hold-and-release gesture is that it feels natural and discreet. You're just holding your phone, which you'd do anyway when walking alone at night. No fumbling for a button in a panic.

Live Location Sharing

When an alert triggers, it doesn't just send a one-time location. The app keeps sending GPS updates every 10 seconds to a live event page that your contacts can open in their browser. The page shows a map with your initial SOS location and your current position updating in real time. Your contacts can see exactly where you are and where you're moving.

The Details That Matter

  • Multi-language alerts — your contacts get messages in their own language (7 languages supported). Because if your mom speaks Portuguese, the emergency alert should be in Portuguese.
  • Delivery tracking — you can see which contacts received and opened the alert
  • Alert history — review past SOS events with all the details
  • Per-contact language — each contact can have a different language set
  • Credit-based pricing — WhatsApp messages cost 2 credits, SMS costs 3. Packs start at CHF 1.99 for 20 credits

Tech Stack

The iOS app is built with SwiftUI, targeting iOS 16+. Authentication uses a custom JWT flow with email OTP — no third-party auth SDKs. The backend runs on NestJS with PostgreSQL, handles Twilio for SMS and WhatsApp delivery, and verifies App Store purchases via StoreKit 2. The landing page and live event viewer are built with Angular 19 and use Mapbox for the maps.

Building an App Store Product

Shipping to the App Store was a whole journey on its own. The in-app purchase flow with StoreKit 2, the review process, localization for 7 languages, privacy policy, support pages — there's so much beyond just writing code. But seeing it go live and knowing that someone might actually use it in a real emergency? That makes all of it worth it.

SOSify is closed source, but it's a project that's very close to me. It started as a childhood idea and turned into my first real product on the App Store. Sometimes the best projects are the ones you've been thinking about the longest.