Inspiration
We were inspired by a simple question: what happens when communication infrastructure disappears?
During disasters, internet shutdowns, protests, rural dead zones, or overloaded networks, people often lose access to reliable information exactly when they need it most. Most modern apps depend on servers, mobile towers, and stable internet. If those fail, communication stops.
We wanted to build something different: a system where devices themselves become the network. That idea became WhisperNet.
What it does
WhisperNet is an offline-first peer-to-peer mesh communication platform that helps people exchange important information without internet access.
It allows users to share:
- Emergency alerts
- Safe routes
- Community updates
- Resource availability
WhisperNet uses three fallback layers:
- WebRTC peer-to-peer messaging
- Local Wi-Fi mesh communication
- QR-based offline message transfer
Messages can propagate across devices:
[ A \rightarrow B \rightarrow C ]
This allows information to travel beyond direct range through nearby users.
How we built it
We built WhisperNet as a Progressive Web App so it can run directly on smartphones without app store installation.
Frontend
- React
- TypeScript
- Tailwind CSS
- Vite
Networking
- WebRTC for direct browser-to-browser communication
- PeerJS for signaling and peer discovery
Storage
- IndexedDB with Dexie for persistent offline data
State Management
- Zustand
Offline Sharing
- QR code generation and scanning
- Compression utilities for compact payload transfer
Our system follows a local-first architecture. Messages are stored on-device first, then synchronized outward to connected peers.
Challenges we ran into
The biggest challenge was setting up WebRTC reliably. Peer-to-peer communication sounds simple in theory, but in practice it involves signaling, session negotiation, connection states, browser permissions, and reconnect logic.
Other challenges included:
- Preventing duplicate messages in mesh relays
- Handling intermittent connectivity
- Transferring larger payloads through QR codes
- Designing a clean UI for stressful real-world scenarios
Accomplishments that we're proud of
- Built a working offline-first communication platform
- Integrated three fallback communication methods into one product
- Enabled multi-hop message propagation
- Added local persistent storage with expiry logic
- Created an installable web app that works across devices
What we learned
This project taught us how communication systems work beneath the surface.
We learned about:
- How internet-free communication is still possible
- Peer-to-peer networking models
- WebRTC signaling and data channels
- Mesh propagation systems
- Offline-first system design
- Real-world tradeoffs between privacy, speed, and reliability
We also learned that building resilient systems is very different from building convenient ones.
What's next for WhisperNet
Next, we want to expand WhisperNet with:
- Bluetooth mesh support
- End-to-end encrypted groups
- File and media transfer
- Smarter routing for message spread
- Emergency map overlays
- Real-world disaster response pilots
Our long-term vision is simple:
Communication should survive infrastructure failure.
Built With
- dexie.js
- fflate
- indexeddb
- peerjs
- pwa
- react
- typescript
- vercel
- vite
- webrtc
- zustand
Log in or sign up for Devpost to join the conversation.