<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="/rss/styles.xsl" type="text/xsl"?><rss version="2.0"><channel><title>SocialMesh Developer Blog</title><description>Technical deep-dives, architecture decisions, and development journal for the SocialMesh mesh-radio companion app.</description><link>https://blog.socialmesh.app/</link><language>en-us</language><item><title>Mesh Services: Publish Anything on the Mesh</title><link>https://blog.socialmesh.app/mesh-services/</link><guid isPermaLink="true">https://blog.socialmesh.app/mesh-services/</guid><description>Building a service creation and discovery system for LoRa mesh networks — templates, TTL, binary schemas, and zero internet required.</description><pubDate>Wed, 08 Apr 2026 00:00:00 GMT</pubDate><category>architecture</category><category>meshtastic</category><category>mesh-services</category><category>mrrp</category></item><item><title>Aether: OpenSky Integration and the Zero-Credit Architecture</title><link>https://blog.socialmesh.app/aether-opensky-integration/</link><guid isPermaLink="true">https://blog.socialmesh.app/aether-opensky-integration/</guid><description>How the Aether flight service evolved from burning OpenSky credits per user to a server-side caching architecture that costs nothing per client request.</description><pubDate>Wed, 18 Feb 2026 00:00:00 GMT</pubDate><category>dev</category><category>aether</category><category>backend</category><category>flights</category><category>opensky</category></item><item><title>Aether: Great Circles, Race Conditions, and Flight Detection</title><link>https://blog.socialmesh.app/aether-flight-detection-math/</link><guid isPermaLink="true">https://blog.socialmesh.app/aether-flight-detection-math/</guid><description>The math and logic behind Aether&apos;s flight route visualization, conflict detection, self-flight guards, and the formulas that make it all work.</description><pubDate>Wed, 18 Feb 2026 00:00:00 GMT</pubDate><category>dev</category><category>aether</category><category>math</category><category>flights</category></item><item><title>From JSON Blob to SQLite: Fixing Chat Message Persistence</title><link>https://blog.socialmesh.app/message-persistence/</link><guid isPermaLink="true">https://blog.socialmesh.app/message-persistence/</guid><description>How we migrated Meshtastic chat storage from a 100-message SharedPreferences blob to a proper SQLite database with per-conversation retention.</description><pubDate>Tue, 17 Feb 2026 00:00:00 GMT</pubDate><category>meshtastic</category><category>architecture</category><category>storage</category></item><item><title>NodeDex System Architecture</title><link>https://blog.socialmesh.app/nodedex-system-architecture/</link><guid isPermaLink="true">https://blog.socialmesh.app/nodedex-system-architecture/</guid><description>Complete technical deep-dive into NodeDex — procedural identity, field journal system, sigil generation, trait inference, patina scoring, and progressive disclosure.</description><pubDate>Tue, 17 Feb 2026 00:00:00 GMT</pubDate><category>architecture</category><category>nodedex</category><category>meshtastic</category></item><item><title>Firmware Extensions: Binary Encoding Over LoRa Mesh</title><link>https://blog.socialmesh.app/firmware-extensions-overview/</link><guid isPermaLink="true">https://blog.socialmesh.app/firmware-extensions-overview/</guid><description>How SocialMesh extends Meshtastic with custom binary portnums for presence, signals, and identity -- without forking the firmware.</description><pubDate>Mon, 16 Feb 2026 00:00:00 GMT</pubDate><category>protocol</category><category>firmware</category><category>binary</category><category>meshtastic</category></item><item><title>Welcome to the SocialMesh Developer Blog</title><link>https://blog.socialmesh.app/welcome/</link><guid isPermaLink="true">https://blog.socialmesh.app/welcome/</guid><description>Introducing the SocialMesh developer blog -- technical deep-dives, architecture decisions, and the development story so far.</description><pubDate>Mon, 16 Feb 2026 00:00:00 GMT</pubDate><category>meta</category><category>announcement</category></item><item><title>Aether: Flight Sharing on the Mesh</title><link>https://blog.socialmesh.app/aether-flights/</link><guid isPermaLink="true">https://blog.socialmesh.app/aether-flights/</guid><description>Launching the Aether flight sharing service -- ground stations report aircraft reception data to a shared leaderboard via mesh radio.</description><pubDate>Thu, 12 Feb 2026 00:00:00 GMT</pubDate><category>dev</category><category>aether</category><category>backend</category><category>flights</category></item><item><title>Sigil: Node Identity Cards</title><link>https://blog.socialmesh.app/sigil-identity-cards/</link><guid isPermaLink="true">https://blog.socialmesh.app/sigil-identity-cards/</guid><description>Building the Sigil API -- shareable node identity card snapshots with an Express backend, SQLite storage, and Apple Wallet integration.</description><pubDate>Sat, 07 Feb 2026 00:00:00 GMT</pubDate><category>dev</category><category>sigil</category><category>backend</category><category>nodedex</category></item><item><title>Multi-Protocol: Adding MeshCore Support</title><link>https://blog.socialmesh.app/multi-protocol/</link><guid isPermaLink="true">https://blog.socialmesh.app/multi-protocol/</guid><description>Making SocialMesh a multi-protocol app -- supporting both Meshtastic and MeshCore devices while keeping protocol logic completely isolated.</description><pubDate>Mon, 02 Feb 2026 00:00:00 GMT</pubDate><category>dev</category><category>meshcore</category><category>architecture</category></item><item><title>Going Open Source</title><link>https://blog.socialmesh.app/open-source/</link><guid isPermaLink="true">https://blog.socialmesh.app/open-source/</guid><description>Open-sourcing the SocialMesh mobile client under GPL-3.0 -- what’s included, why GPL, and how contributors can get started.</description><pubDate>Sun, 01 Feb 2026 00:00:00 GMT</pubDate><category>dev</category><category>open-source</category><category>architecture</category></item><item><title>World Mesh: Watching the Global Network</title><link>https://blog.socialmesh.app/world-mesh/</link><guid isPermaLink="true">https://blog.socialmesh.app/world-mesh/</guid><description>Building a real-time MQTT consumer that collects Meshtastic node data from the global mesh and serves it as an API.</description><pubDate>Tue, 27 Jan 2026 00:00:00 GMT</pubDate><category>dev</category><category>mqtt</category><category>backend</category><category>mesh-observer</category></item><item><title>The Automation Engine</title><link>https://blog.socialmesh.app/automation-engine/</link><guid isPermaLink="true">https://blog.socialmesh.app/automation-engine/</guid><description>Building a node automation system for mesh radios -- triggers, actions, geofences, and battery hysteresis.</description><pubDate>Sat, 06 Dec 2025 00:00:00 GMT</pubDate><category>automations</category><category>architecture</category></item><item><title>Firebase Without the Dependency</title><link>https://blog.socialmesh.app/firebase-optional/</link><guid isPermaLink="true">https://blog.socialmesh.app/firebase-optional/</guid><description>How SocialMesh integrates Firebase for optional cloud features while remaining fully functional offline.</description><pubDate>Thu, 04 Dec 2025 00:00:00 GMT</pubDate><category>firebase</category><category>architecture</category><category>offline</category></item><item><title>Presence, Timelines, and the Social Layer</title><link>https://blog.socialmesh.app/presence-and-signals/</link><guid isPermaLink="true">https://blog.socialmesh.app/presence-and-signals/</guid><description>Adding the social layer to a mesh radio app -- presence broadcasts, signal timelines, and the beginning of what makes SocialMesh different.</description><pubDate>Mon, 01 Dec 2025 00:00:00 GMT</pubDate><category>dev</category><category>presence</category><category>signals</category></item><item><title>BLE Transport: The Realities of Bluetooth on Mobile</title><link>https://blog.socialmesh.app/ble-transport/</link><guid isPermaLink="true">https://blog.socialmesh.app/ble-transport/</guid><description>Lessons learned building a reliable BLE transport layer for Meshtastic on iOS and Android. Adapter states, scan retries, and connection sequencing.</description><pubDate>Sun, 30 Nov 2025 00:00:00 GMT</pubDate><category>ble</category><category>transport</category><category>meshtastic</category></item><item><title>Day One: Building a Mesh Radio Companion</title><link>https://blog.socialmesh.app/day-one/</link><guid isPermaLink="true">https://blog.socialmesh.app/day-one/</guid><description>First commit. A Flutter app that talks to Meshtastic radios over Bluetooth Low Energy. Starting from zero.</description><pubDate>Fri, 28 Nov 2025 00:00:00 GMT</pubDate><category>dev</category><category>ble</category><category>flutter</category></item></channel></rss>