Inspiration

Mainstream messengers fail when network gaps occur during disasters, internet shutdowns, or rural coverage drops[cite: 2]. They also tie users to a single phone identity and lack quick emergency action[cite: 2]. I wanted to build Dial-X to ensure secure communication keeps working when traditional networks don't[cite: 1, 15].

What it does

Dial-X is a privacy-first mobile messaging and emergency app built for real-world network resilience[cite: 1, 15]:

  • Offline Mesh Messaging: Uses Bluetooth + Wi-Fi Direct multi-hop relay (up to 5 hops) to deliver encrypted messages with no internet or SIM coverage[cite: 3, 5].
  • Emergency SOS: Holding the volume button for 6 seconds triggers a foreground service that broadcasts live location every 15 minutes—even when the screen is locked or app is closed[cite: 3, 6].
  • Multiple Isolated Identities: Create several IDs under one account with separate contacts, chats, and presence[cite: 3, 4].
  • E2E Security: AES-256 local key derivation, private keys stored locally, and zero raw message storage on servers[cite: 7].

How we built it

  • Frontend: Built natively with Flutter & Dart[cite: 12].
  • Backend Infrastructure: Supabase (PostgreSQL, Row-Level Security, Edge Functions)[cite: 12].
  • Local Storage: ObjectBox for instant offline-first local DB operation[cite: 12].
  • Real-time Calls & Mesh: Integrated LiveKit (WebRTC) for calls and Nearby Connections BLE/Wi-Fi Direct for mesh transport[cite: 12].

Challenges we ran into

Implementing multi-hop offline relay without high battery drain while maintaining AES-256 end-to-end encryption across intermediate devices without leaking user identities[cite: 5, 7].

What's next for Dial-X

  • Self-hosting dedicated LiveKit calling infrastructure[cite: 12, 14].
  • Launching the iOS version[cite: 12, 14].

Built With

Share this project:

Updates

Submission history