← All projects
TruthRelay
JH26-QNKNTernaryOps · Dhaka · JnU, Dhaka · 3 members · Crisis Tech
TruthRelay is an offline-first mesh of crisis bulletins and help requests. It works when the cellular fabric and the internet go down...
The problem
Cellular networks and internet infrastructure fail first during crises, cut off exactly when citizens need reliable, life-saving information most. In the resulting blackout, unverified rumors spread rapidly, and critical help requests—such as blood or missing person reports—fail to reach responders due to flaky or non-existent connectivity.
The solution
TruthRelay provides an offline-first mesh network that delivers cryptographically verified crisis bulletins and emergency help requests during cellular and internet blackouts.
1. Source-Signed Trust Model: Authorized moderators sign updates locally using Ed25519 cryptography over byte-identical Canonical JSON. This ensures news and debunks remain tamper-proof and verifiable even when transmitted through untrusted intermediate devices.
2. Multi-Transport P2P Mesh: Devices automatically discover each other via Bluetooth Low Energy (BLE) beacons and exchange stored outboxes over high-bandwidth Wi-Fi Direct links or local hotspots—operating 100% off-grid without requiring global internet connectivity.
3. Store-and-Forward Sync: Unsent posts remain queued in local Hive storage. The moment any phone comes into range of an edge relay (an Axum + SQLite edge server running on a local laptop) or a connected peer, it automatically flushes its outbox and forwards carried peer data. The relay deduplicates packets by SHA-256 and re-verifies all signatures before broadcasting them across the network.
Tech stack
Tech Stack & Tools Used in TruthRelay:
1. Backend (Relay Server)
- Language: Rust
- Framework: Axum
- Database: SQLite
- Cryptography: ed25519-dalek (Ed25519 signature verification)
- CLI: clap
2. Web Admin Dashboard / PWA
- Framework: Vue 3
- UI Library: Naive UI
- Build Tool & Runtime: Vite, Bun
- Cryptography: @noble/ed25519
- Testing: Vitest
3. Mobile Application (Android)
- Framework: Flutter
- State Management: Riverpod
- Local Database / Outbox: Hive
- Router: go_router
- Cryptography: package:cryptography (Ed25519 signing)
- HTTP Client: Dio
- Network / Mesh Plugins: connectivity_plus, flutter_p2p_connection, workmanager (background sync)
4. Protocols & Transports
- Bluetooth Low Energy (BLE): Custom 16-byte TR1 beacon discovery
- Peer-to-Peer Transport: Wi-Fi Direct & local-only Soft-AP hotspots
- Data Specification: Custom byte-identical Canonical JSON specification
5. DevOps & Containerization
- Orchestration: Docker & Docker Compose
- Web Server / Reverse Proxy: Nginx (Alpine)
- Automation: Top-level and subproject Makefiles
AI tools used (section 5 disclosure)
Claude 4.8 opus