It is a submarine swap client against the boltz-backend Currently it imitates the api of the lightning loop.
Read the anouncement blogpost for more detail.
- Supports liquidity management with autoloop (experimental)
- Supports multi-asset swap.
- The server side is boltz, which is OSS. (Which is not the case for lightning loop.)
- Complete immutable audit log with event-sourcing. Which enables you to easily audit how much you have paied as fee during swaps.
- Minimum trust against the server. It validates every information we get from the server.
- Minimize the direct interaction against the server and instead get the information from the blockchain as much as possible.
- As an real-world example of F#/ASP.NET/DDD/EventSourcing
NLoop is an open beta: Please use at your own risk. we may introduce backward incompatible changes.
We have a two binaries for you to work with.
nloopd
... standalone daemon to perform/manage the submarine swap.nloop-cli
... command line tool to work withnloopd
(TBD)
Download the latest binary from the release page
and run with --help
to see the possible configuration option.
nloopd
must connect to following services to work correctly.
- or
litecoind
if you want to work with litecoin.
- For saving the application's state.
Probably the best way to check its behaviour is to run it in the regtest. Check the following guide for how-to.
Check README.md in test project
Check out our openapi.yml
(or its rendered version) for the REST API specification.
There is a one endpoint which is not included in the spec. That is a WebSocket endpoint for listening to events.
/v1/events
You can see the complete list of startup configuration options with --help
But CLI option is not the only way to specify those variables.
You can also use environment variables start from NLOOP_
.
e.g. for cli options --eventstoreurl
, NLOOP_EVENTSTOREURL
is equivalent.
- loop-in autoloop
- support interacting with multiple swap-server
- support swap against lightning-loop-server
- grpc interface