mirror of
https://github.com/tompro/sattle.git
synced 2026-08-26 23:05:58 +00:00
68 lines
3.1 KiB
Markdown
68 lines
3.1 KiB
Markdown
<p align="center">
|
|
<img src="src/assets/sattle-wallet.png" alt="sattle wallet logo" width="150" />
|
|
<br />
|
|
<img src="src/assets/sattle-text.png" alt="sattle" width="220" />
|
|
</p>
|
|
|
|
<p align="center">
|
|
A Lightning wallet that feels like handing someone cash.
|
|
</p>
|
|
|
|
<p align="center">
|
|
<a href="https://github.com/tompro/sattle/actions/workflows/ci.yml"><img src="https://github.com/tompro/sattle/actions/workflows/ci.yml/badge.svg" alt="ci" /></a>
|
|
<a href="https://github.com/tompro/sattle/releases"><img src="https://img.shields.io/github/v/release/tompro/sattle" alt="latest release" /></a>
|
|
<a href="LICENSE"><img src="https://img.shields.io/badge/license-MIT-blue" alt="MIT license" /></a>
|
|
</p>
|
|
|
|
---
|
|
|
|
## What is sattle?
|
|
|
|
sattle is a wallet for **Lightning bearer notes** (LNURLcash, LUD-25). A bearer
|
|
note is a link that _is_ the money: receive one and the sats are yours, send one
|
|
and they move — no invoices to request, no amounts to negotiate, no Lightning
|
|
jargon to learn. Receiving and sending takes seconds.
|
|
|
|
It's an installable web app (PWA) that works on any modern phone or desktop, with
|
|
an Android app wrapping the same experience. Built for people who just want to
|
|
send and receive.
|
|
|
|
<p align="center">
|
|
<img src="docs/screenshots/main.png" alt="Main screen" width="260" />
|
|
<img src="docs/screenshots/receive.png" alt="Receive — Lightning or bearer note" width="260" />
|
|
<img src="docs/screenshots/manage-mints.png" alt="Manage mints" width="260" />
|
|
</p>
|
|
|
|
## Highlights
|
|
|
|
- **Instant notes** — receive sats as a link or QR code; pass them on the same
|
|
way. No invoice round-trips, no address book.
|
|
- **Mint trust, made visible** — notes are issued by mints you choose to trust.
|
|
sattle pins each mint's signing key and asks you to review any key change
|
|
before accepting it, so a mint can't quietly swap its identity.
|
|
- **Move funds between mints** — rebalance from one mint to another in a few
|
|
taps.
|
|
- **Backups that fit your habits** — export an encrypted backup file, or let
|
|
sattle keep an encrypted backup on nostr (kind 30078) that only you can read.
|
|
- **Passkey and biometric unlock** — open the wallet with your device's passkey
|
|
or fingerprint. A password fallback is always available.
|
|
- **Connect other apps** — built-in Nostr Wallet Connect (NWC) service lets
|
|
external apps pay from your wallet while sattle is open and unlocked, with
|
|
per-connection budgets you control.
|
|
|
|
## How it works
|
|
|
|
sattle uses LNURLcash (LUD-25) bearer notes: each note is a URL that carries
|
|
spendable Lightning value. Your notes live **encrypted on your device** — the
|
|
underlying sats are held by the mints that issued the notes, so choosing and
|
|
reviewing mints is part of the model, and sattle surfaces that rather than
|
|
hiding it. Spend a note and the mint pays out over Lightning; receive one and
|
|
your wallet claims it instantly.
|
|
|
|
## For developers
|
|
|
|
sattle is a Quasar / Vue 3 PWA with a Capacitor Android wrapper (no signed
|
|
release yet). The protocol core is framework-free and lives in
|
|
[`src/lnurlcash/`](src/lnurlcash/). Contributor docs, architecture notes and
|
|
project conventions are in [AGENTS.md](AGENTS.md).
|