GitHub - bitbankinc/NLoop: Generic Lightning Loop
source link: https://github.com/bitbankinc/NLoop
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
What is NLoop?
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.
Why use NLoop?
- 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
Caution:
NLoop is an open beta: Please use at your own risk. we may introduce backward incompatible changes.
How to
Quick start
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.
How to try nloopd
with local docker-compose environment in regtest.
Check README.md in test project
REST API
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
configuration options
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.
Future plans
- loop-in autoloop
- support interacting with multiple swap-server
- support swap against lightning-loop-server
- grpc interface
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK