Skip to content

Instantly share code, notes, and snippets.

@callebtc
Last active May 24, 2024 12:39
Show Gist options
  • Save callebtc/67da3f586ef273df80bf679e464bc3f3 to your computer and use it in GitHub Desktop.
Save callebtc/67da3f586ef273df80bf679e464bc3f3 to your computer and use it in GitHub Desktop.
Cashu.me 0.1 – Release notes

Cashu.me is a Cashu Chaumian Ecash wallet for Bitcoin built as a progressive web app (PWA). Today, we're excited to announce its first release and would like to thank all developers and users who have helped to build and improve this wallet. Cashu.me is free and open-source software released under the MIT license.

main

To get started, open Cashu.me in your browser and add it to your home screen to install the app. We recommend to use your device's native browser for the best experience. Beware that Ecash is a bearer asset which means that if you delete your browser data or lose access to your device without a proper backup (see below), you will lose your funds. Use this wallet only for small spending amounts.

New Features

Countless new features for this release give you the best possible Ecash experience. We're bringing this ancient crypto technology back into the 21st century and present you a modern interpretation of the original cypherpunk vision - built on Bitcoin.

At a glance

  • Modern UI
  • Support for Bitcoin and USD
  • Seed phrase backups
  • Animated QR codes
  • Send Ecash offline
  • Receive Ecash offline
  • Lock Ecash with P2PK
  • Discover mints via Nostr
  • Swap Ecash between mints
  • Remote control with NWC

usd

UI Design

The wallet was designed anew from the ground-up. The user interface features a modern and minimalistic look that gives you access to the main features of the wallet with just a few taps. The home screen shows you your total balance across all mints. Click on your balance to switch between different units. The wallet currently supports Bitcoin and USD Ecash.

Multiple currencies

Cashu.me uses the new v1 Cashu protocol which has support for multiple currencies – all backed by Bitcoin. You can send and receive Bitcoin or Fiat via Lightning invoices or directly as Ecash. Ecash offers the closest digital equivalent to physical cash. Those who still use fiat should enjoy enhanced privacy and instant transactions, backed by Bitcoin.

Seed phrase backups

Ecash is a bearer asset which means that the tokens themselves are actually stored on your device. There is no server that holds your Ecash or makes transactions for you – it's all happening on your device. This also means that if you lose your device or delete your browser data, your Ecash will be gone. Luckily, Cashu.me now supports seed phrase backups that allow you to restore your entire balance if you lose your device. Keep this seed phrase safe and secure and restore it with any other Cashu wallet you like. Interoperability wins.

send

Animated QR codes

The more Ecash you send, the more data you need to transmit. Like with physical cash, you'll need to take out more coins from your wallet and hand it over to the person you're paying. Classical QR codes quickly reach the limit of how much data they can transmit. Cashu.me now supports animated QR codes which not only feels like science fiction, it also allows you to send any amount you like via QR codes without ever hitting the internet. This is a great UX, works while you're offline, and greatly improves your privacy. Nobody knows that a transaction happened. It's just you and your counterparty.

Offline Ecash

A new coin selection algorithm built into Cashu.me ensures you always have the right amount of Ecash in your wallet to be able to make up to 4 payments of any amount from your wallet without having to go online. Combined with animated QR codes, this makes using the wallet a mostly offline experience.

receive

Offline receiving

You can now not only send Ecash offline, but also receive it without internet. Simply press the "Later" button in your receive screen and store the Ecash in your History to redeem it later when you come back online. If you trust the person paying you to not double-spend the tokens, you can do this with any Ecash transaction. To gain more confidence, you can watch them delete the tokens from their phone by pressing the delete button below the QR code.

P2PK-locked Ecash

For cases where you don't want to trust your counterparty to double-spend the Ecash on you while you still remain offline, they can now lock Ecash to your public key by using the Pay-to-Pubkey (P2PK) feature. This locks their Ecash to the receiver's public key so that only you can ever spend it. You can create a public key for receiving P2PK-locked Ecash in the settings. Once they present the QR code to you, you can store the Ecash in your history and receive it later, being confident that it can't be double-spent by anyone anymore. This is Bitcoin tech improving Ecash.

Discover Ecash Mints via Nostr

Cashu.me is a wallet that can connect to as many Ecash mints as you like. An Ecash mint is an entity issuing Ecash tokens for their users. Cashu.me is not affiliated with any mint. Only use mints that you trust and beware that a mint may be shut down at any time and make your funds inaccessible. Beware of these risks and only use the wallet for small spending amounts to keep your risk as low as possible.

The mint tab on your home screen now allows you to edit a mint. You will see the mint your currently active mint in your home screen below your main balance. You can switch the active mint in your home screen or while sending or receiving a payment.

The mint tab on the home screen now allows you to discover new mints via Nostr, a decentralized communication protocol. You can think of this like an unstoppable yelp for Chaumian Ecash mints. Nostr is a protocol where users can leave reviews for mints. You can also browse for mints on bitcoinmints.com or on cashumints.space.

Swap Ecash between mints

If you ever want to transfer funds you hold from one mint to another, you can use the multi-mint swap feature in the Mint tab. All mints speak the Bitcoin Lightning protocol which means you can transfer value between them. Select the mint you want to send from and the mint to send to and the amount you'd like to transfer and watch how your balance moves from one to the other. The best part is that the mints do not know what's happening. All they see is a Lightning payment but they aren't aware of much else.

Remote control your wallet with NWC

You can now use your Cashu.me wallet from other applications using a feature called Nostr Wallet Connect (NWC). Once you create a NWC connection and set an allowance in Satoshis, you can link your wallet with other apps like Nostr clients and start zapping directly from your Ecash wallet. You can scroll through your feed on your computer and initiate payments that are sent from your phone to the person you're paying. It truly feels like magic. And it's kind of unstoppable.

Give us feedback

We highly value your feedback on these new features! Share your thoughts and experiences to help us improve. Keep in mind that Cashu.me is an open-source project and may contain bugs that could potentially lead to unexpected loss of funds. We advise using it with small amounts that you can afford to lose. Additionally, remember that using a mint means trusting them with control of your Bitcoin in exchange for Ecash. Choose only trustworthy mints—this cannot be emphasized enough.

Join us in shaping the cypherpunk future built on Bitcoin!

To learn more about Cashu, visit cashu.space, read our documentation, and follow @CashuBTC on Twitter.

@busynest
Copy link

Everything should be based on Lit Element. Your examples, interop, everything. Because Custom HTML Elements are the best.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment