Tester gesucht: EmberSpark - schlanker Android-Client für deinen eigenen LNbits-Server

Hallo zusammen,

ich entwickle in meiner Freizeit EmberSpark, eine Android-App, die als Bedienoberfläche für einen selbst gehosteten LNbits-Server dient. Wichtig vorab: EmberSpark ist explizit keine eigenständige Wallet. Dein LNbits-Server bleibt die Wallet, EmberSpark ist der Client dafür auf dem Handy. Custodial-Funktionen, eingebaute Tauschdienste oder ähnliches gibt es nicht und sind auch nicht geplant.
Möglicherweise werden in Zukunft aber weitere Wallets/Backends unterstützt.

Die App liegt bereits im Google Play Store. Für die kommenden Releases suche ich noch ein paar Tester aus dem deutschsprachigen Lightning-Umfeld, die idealerweise ihren eigenen Node betreiben und gern kritisch hinschauen.

Ideal wenn ihr euren Lightning Node und bestehenden Kanäle für Familie und Freunde zugänglich machen wollt.

Features

  • Lightning Send & Receive über deinen LNbits-Server

  • QR-Scanner mit Auto-Routing für BOLT11, BOLT12 (lno1… / lni1…), LNURL und Lightning-Adressen

  • BOLT12 komplett: Offers und Invoices bezahlen, eigene Offers über die LNbits-Community-Extension generieren

  • LNURL: pay, withdraw und auth (LUD-04 mit secp256k1-Signatur), inkl. LUD-12 Kommentar beim Pay

  • Lightning-Adressen (user@host) als Sende- und Kontakt-Ziel

  • Meine Visitenkarte: eigene Lightning-Adresse, BOLT12-Offer und LNURL-pay-Link via QR, Copy, Share oder NFC teilen, optional automatisch vom LNbits-Server generiert

  • Deterministische Avatare pro Wallet, aus den öffentlichen Lightning-Identifiern abgeleitet, sodass die gleiche Person bei dir und beim Gegenüber denselben Avatar zeigt

  • Mehrere LNbits-Server parallel verwalten, mit schnellem Switcher und eigener Visitenkarte pro Server

  • Live-Transaktionsverlauf, eingehende und ausgehende Zahlungen erscheinen ohne manuelles Refresh

  • Sats / Fiat-Toggle überall (USD, EUR, GBP, CHF, CAD, AUD, JPY via mempool.space), inkl. Eingabe in Fiat beim LNURL-Pay

  • Kontakte speichern, plus Import / Export als JSON-Datei

  • NFC read / write für Lightning-Destinations

  • System-Handler für lightning:- und lnurl:-Deep-Links

  • Biometrie- oder PIN-Sperre beim App-Start

  • API-Key im Android KeyStore (flutter_secure_storage); explizit kein Android Auto Backup, damit die Credentials nicht in Google Drive landen

  • TLS-Toggle für selbstsignierte Zertifikate oder .onion-LNbits-Server

Voraussetzungen

  • Android 6.0+ (API 23)

  • Ein eigener, erreichbarer LNbits-Server mit echtem Lightning-Backend (LND, CLN, Phoenixd oder NWC). VoidWallet reicht nicht, der bewegt keine Sats.

  • Netzwerk-Erreichbarkeit vom Handy zum LNbits-Server: LAN, Reverse-Proxy oder .onion gehen alle.

  • Ein Google-Konto, das ich zur Tester-Liste hinzufügen kann

Links

Mitmachen

Wer im Geschlossenem Testing Track mitlaufen will: schickt mir eine kurze PM mit der Google-E-Mail-Adresse des Test-Accounts. Ich nehme euch in die Tester-Liste auf und ihr bekommt die Builds direkt aus dem Play Store. Feedback gerne hier im Thread, per PM oder über den GitHub-Issue-Tracker.

1 „Gefällt mir“

Alternative Teilnahme über Beitritt der Google Group: https://groups.google.com/g/emberspark-testers

Die Mitgliedschaft schaltet den Testzugang frei, sobald du mit dem Google-Konto beigetreten bist.
Play Store: https://play.google.com/store/apps/details?id=com.emberspark.wallet (Nur sichtbar für registrierte Tester)

Moment ist EmberSpark eine management-Software für LNbits, also für die Verwaltung durch den Server-Admin, Verwaltung von LNbits-Konten etc. oder ist es für jeweils einen bestimmten LNbits account (ggf. mehrere Wallets in Account) oder ist es für jeweils eine bestimmte Wallet?

Werden Bolt Cards, aktiv unterstützt?
Funktioniert das abbuchen von Sats via LNURLw/Bolt card per scan/NFC wenn die Quelle eine andere Wallet auf dem gleichen LNbits-Server (mit gleicher node dahinter) ist?

Scheint ein spannendes Projekt zu sein. Gibt es schon Pläne für das Release?

Hi Astrea, danke fürs Nachfragen,

Auf welcher Ebene arbeitet EmberSpark?

EmberSpark ist keine Admin- oder Management-Software für LNbits. Es ist ein Client auf Wallet-Ebene. Du bindest es an eine konkrete LNbits-Wallet an, indem du den API-Key (Admin-Key, z. B. per QR) hinterlegst. Ein API-Key entspricht in LNbits genau einer Wallet, also arbeitet EmberSpark pro Wallet.

Du kannst aber mehrere Wallets parallel einbinden. Auch über verschiedene LNbits-Server hinweg und per Switcher zwischen ihnen wechseln. Jede eingebundene Wallet hat ihre eigene Visitenkarte (Lightning-Adresse, LNURL-pay, BOLT12).

Werden Bolt Cards aktiv unterstützt?

Eine dedizierte Bolt-Card-Funktion (Karten programmieren, Anbindung der boltcard-Extension, Counter-Handling) gibt es aktuell nicht. EmberSpark unterstützt aber generisch LNURL-withdraw (LUD-03) und kann sowohl QR-Codes als auch NFC-NDEF-Tags lesen.

Praktisch heißt das: Liegt auf der Karte bzw. dem Tag eine standardmäßige LNURL (bech32 LNURL1…, optional mit lightning:-Präfix), liest EmberSpark sie und führt den Withdraw aus. Viele programmierbare Bolt Cards nutzen allerdings das lnurlw://-Schema mit pro-Tap-Counter (p/c-Parameter), und dieses Schema parst der aktuelle Decoder noch nicht zuverlässig. Eine solche Karte funktioniert also nicht garantiert out of the box. Echte Bolt-Card-Unterstützung steht damit noch auf der To-do-Liste.

Funktioniert das Abbuchen via LNURLw, wenn die Quelle eine andere Wallet auf demselben LNbits-Server (gleiche Node) ist?

Kurz gesagt, ja :slightly_smiling_face:
Beim LNURL-Withdraw erzeugt EmberSpark auf der gerade verbundenen Ziel-Wallet eine Invoice und reicht sie an den Withdraw-Callback der Quelle weiter und die Quell-Wallet bezahlt diese Invoice. Das funktioniert auch auf demselben Server/Node

Gibt es schon Release-Pläne?

Leider noch nicht. Stand jetzt läuft EmberSpark im geschlossenen Test (Closed Testing) auf Google Play, für den ich hier Tester suche.

1 „Gefällt mir“

@Astrea Ich habe soeben eine neue Version released, die nun auch das lnurlw://-Schema korrekt behandeln sollte. Somit müssten Boltcards nun zumindest für die Bezahlung in EmberSpark funktionieren.

Testen kann ich das allerdings selber leider nicht, da ich aktuell noch keine Boltcard besitze. Ich werde mir hierfür wohl noch eine bestellen müssen.

BTW: Schönes Tagebuch, das du hier im Forum führst :wink: