Cashu Mints can offer a better and more sovereign custodial Lightning experience. However because eCash tokens are stored by the users themselves, offline receiving can be challenging. npub.cash introduces a LNURL service that generates tokens on received payments and holds on to them for a user, until they come back online. This is a reference implemenation of the npub.cash service written in Typescript.
npubcash-server is a NodeJs application written in TypeScript. Below is a step-by-step on how to get it started.
- Node and npm. Install NodeJs and it's package manager npm.
- Clone the repo
git clone https://github.com/github_username/repo_name.git
- Install NPM packages
npm install
-
Setup your environment varaibles according to
example.env
. Variables from.env
will be automatically read by the development server, but not the production build. -
Start the development server
npm run dev
By default the dev server will include the projects landing page on the root domain. For more details check out the documentation
- Implement basic API
- Implement NIP-05 endpoint for all users
- Add notifications
- Improved error handling and logging
- Remove Blink API (depends on cashu webhooks)
- Implement NUT-10 (depends on ecosystem)
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement".
Distributed under the MIT License. See LICENSE.txt
for more information.
Lead Maintainer: Egge - @egge21m on Twitter - or on nostr