Skip to content

Latest commit

 

History

History
91 lines (65 loc) · 3.34 KB

File metadata and controls

91 lines (65 loc) · 3.34 KB

Backend Services

This document clarifies the boundary between the open-source mobile app and proprietary backend services.

Repository Scope

This repository contains the mobile client only. Backend services, cloud functions, and server infrastructure are proprietary and maintained separately.

Feature Classification

Works Without Backend

These features are fully functional with only a Meshtastic radio:

  • BLE and USB device connection
  • Channel and direct messaging
  • Node discovery and network topology
  • Device configuration (LoRa, position, Bluetooth, etc.)
  • Local message and node storage
  • Waypoints and location sharing
  • Traceroute and signal history
  • Canned messages and quick responses
  • QR code channel import/export
  • Emergency SOS broadcast
  • RTTTL ringtone preview and device upload
  • NodeDex — procedural sigils, trait inference, patina scoring, co-seen tracking
  • Signals — structured operational reports with configurable TTL
  • Presence — node online/offline tracking and activity patterns
  • Mesh Health — network health metrics and utilization graphs
  • Reachability — probabilistic node reachability assessment
  • Route analysis — discovered routes and packet paths
  • 3D Mesh View — interactive network topology visualization
  • Automations — local rule-based event triggers and actions

Requires Backend Services

These features require proprietary backend services not included in this repository:

  • Authentication — Sign-in with Apple/Google
  • Profile Sync — Cloud backup of user profiles
  • Push Notifications — Remote alerts when app is backgrounded
  • Shared Linkssocialmesh:// deep links that resolve via Firestore
  • Social Features — Following, comments, reactions on Signals
  • Content Moderation — Automated and manual content review
  • Widget Marketplace — Cloud-hosted widget templates
  • World Mesh Map — Global node visualization from MQTT aggregator
  • Premium Entitlements — Purchase verification via RevenueCat webhooks

Graceful Degradation

When backend services are unavailable:

  • Authentication options are hidden
  • Cloud sync silently falls back to local-only
  • Push notifications are disabled
  • Social features show offline state
  • App remains fully functional for core mesh communication

Contribution Policy

Pull requests that attempt to:

  • Reimplement backend services within the client
  • Bypass authentication or entitlement checks
  • Reverse-engineer or mock proprietary APIs
  • Add alternative backend integrations

will not be accepted.

Contributions to improve offline functionality, mesh protocol support, and local features are welcome.

Questions

For questions about backend services or commercial licensing, contact the maintainers directly.

Secrets and Configuration

Do not commit secrets to this repository.

  • API keys, tokens, and credentials must never be committed
  • Use environment variables or local untracked config files (.env)
  • Firebase config files (google-services.json, GoogleService-Info.plist) are gitignored by default
  • Service account JSON files are gitignored and must not be added

For development without backend configuration, use demo mode:

flutter run --dart-define=SOCIALMESH_DEMO=1

CI runs an automated secret scan on every push and pull request. Commits containing detected secrets will fail the build.