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
- aes-256
- bluetooth-mesh
- dart
- flutter
- livekit
- postgresql
- supabase
- webrtc
- wi-fi-direct
Log in or sign up for Devpost to join the conversation.