{"id":18928863,"url":"https://github.com/lightninglabs/loop","last_synced_at":"2025-05-14T20:09:11.856Z","repository":{"id":38434235,"uuid":"170951705","full_name":"lightninglabs/loop","owner":"lightninglabs","description":"Lightning Loop: A Non-Custodial Off/On Chain Bridge","archived":false,"fork":false,"pushed_at":"2025-05-08T20:43:58.000Z","size":5872,"stargazers_count":572,"open_issues_count":45,"forks_count":119,"subscribers_count":20,"default_branch":"master","last_synced_at":"2025-05-13T08:05:20.050Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/lightninglabs.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2019-02-16T01:57:56.000Z","updated_at":"2025-05-08T20:44:03.000Z","dependencies_parsed_at":"2023-11-15T13:25:38.066Z","dependency_job_id":"ddeb6fbe-8d16-400f-a938-a607b5181827","html_url":"https://github.com/lightninglabs/loop","commit_stats":{"total_commits":1114,"total_committers":57,"mean_commits":19.54385964912281,"dds":0.855475763016158,"last_synced_commit":"d198bb8230a84a918bf332f29d3e4d308d8375e1"},"previous_names":[],"tags_count":111,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lightninglabs%2Floop","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lightninglabs%2Floop/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lightninglabs%2Floop/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lightninglabs%2Floop/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lightninglabs","download_url":"https://codeload.github.com/lightninglabs/loop/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254219374,"owners_count":22034397,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-08T11:28:29.416Z","updated_at":"2025-05-14T20:09:11.836Z","avatar_url":"https://github.com/lightninglabs.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Lightning Loop\nLightning Loop is a non-custodial service offered by\n[Lightning Labs](https://lightning.engineering/) that makes it easy to move\nbitcoin into and out of the Lightning Network.\n\n## Features\n- Automated channel balancing\n- Privacy-forward non-custodial swaps\n- Opportunistic transaction batching to save on fees\n- Progress monitoring of in-flight swaps\n\n## Use Cases\n- Automate channel balancing with AutoLoop ([Learn more](https://github.com/lightninglabs/loop/blob/master/docs/autoloop.md))\n- Deposit to a Bitcoin address without closing channels with Loop In\n- Convert outbound liquidity into inbound liquidity with Loop Out\n- Refill depleted Lightning channels with Loop In\n\n## Installation\nDownload the latest binaries from the [releases](https://github.com/lightninglabs/loop/releases) page.\n\n## Execution\nThe Loop client needs its own short-lived daemon to facilitate swaps. To start `loopd`:\n\n```\nloopd\n```\n\nTo use Loop in testnet, simply pass the network flag:\n```\nloopd --network=testnet\n```\n\nBy default `loopd` attempts to connect to the `lnd` instance running on\n`localhost:10009` and reads the macaroon and tls certificate from `~/.lnd`.\nThis can be altered using command line flags. See `loopd --help`.\n\n## Usage\n\n### AutoLoop\nAutoLoop makes it easy to keep your channels balanced. Checkout our [autoloop documentation](https://docs.lightning.engineering/advanced-best-practices/advanced-best-practices-overview/autoloop) for details.\n\n### Loop Out\nUse Loop Out to move bitcoins on Lightning into an on-chain Bitcoin address.\n\nTo execute a Loop Out:\n```\nloop out \u003camt_in_satoshis\u003e\n```\n\nOther notable options:\n- Use the `--fast` flag to swap immediately (Note: This opts-out of fee savings made possible by transaction batching)\n- Use the `--channel` flag to loop out on specific channels\n- Use the `--addr` flag to specify the address the looped out funds should be sent to (Note: By default funds are sent to the lnd wallet)\n\nRun `loop monitor` to monitor the status of a swap.\n\n### Loop In\nUse Loop In to convert on-chain bitcoin into spendable Lightning funds.\n\nTo execute a Loop In:\n```\nloop in \u003camt_in_satoshis\u003e\n```\n\n### More info\nFor more information about using Loop checkout our [Loop FAQs](./docs/faqs.md).\n\n## Development\n\n### Regtest\nTo get started with local development against a stripped down dummy Loop server\nrunning in a local `regtest` Bitcoin network, take a look at the\n[`regtest` server environment example documentation](./regtest/README.md).\n\n### Testnet\nTo use Loop in testnet, simply pass the network flag:\n```\nloopd --network=testnet\n```\n\n### Submit feature requests\nThe [GitHub issue tracker](https://github.com/lightninglabs/loop/issues) can be\nused to request specific improvements or report bugs.\n\n### Join us on Slack\nJoin us on the\n[LND Slack](https://lightning.engineering/slack.html) and join the #loop\nchannel to ask questions and interact with the community.\n\n## LND\nNote that Loop requires `lnd` to be built with **all of its subservers**. Download the latest [official release binary](https://github.com/lightningnetwork/lnd/releases/latest) or build `lnd` from source by following the [installation instructions](https://github.com/lightningnetwork/lnd/blob/master/docs/INSTALL.md). If you choose to build `lnd` from source, use the following command to enable all the relevant subservers:\n\n```\nmake install tags=\"signrpc walletrpc chainrpc invoicesrpc\"\n```\n\n## API\nThe Loop daemon exposes a [gRPC API](https://lightning.engineering/loopapi/#lightning-loop-grpc-api-reference)\n(defaults to port 11010) and a [REST API](https://lightning.engineering/loopapi/index.html#loop-rest-api-reference)\n(defaults to port 8081).\n\nThe gRPC and REST connections of `loopd` are encrypted with TLS and secured with\nmacaroon authentication the same way `lnd` is.\n\nIf no custom loop directory is set then the TLS certificate is stored in\n`~/.loop/\u003cnetwork\u003e/tls.cert` and the base macaroon in\n`~/.loop/\u003cnetwork\u003e/loop.macaroon`.\n\nThe `loop` command will pick up these file automatically on mainnet if no custom\nloop directory is used. For other networks it should be sufficient to add the\n`--network` flag to tell the CLI in what sub directory to look for the files.\n\nFor more information on macaroons,\n[see the macaroon documentation of lnd.](https://github.com/lightningnetwork/lnd/blob/master/docs/macaroons.md)\n\n**NOTE**: Loop's macaroons are independent from `lnd`'s. The same macaroon\ncannot be used for both `loopd` and `lnd`.\n\n## Build from source\nIf you’d prefer to build from source:\n```\ngit clone https://github.com/lightninglabs/loop.git\ncd loop/cmd\ngo install ./...\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flightninglabs%2Floop","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flightninglabs%2Floop","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flightninglabs%2Floop/lists"}