This repository contains the implementation of a bridge that allows users to transfer Runes tokens between the Bitcoin and Spark L2. The bridge utilizes a multi-signature vault mechanism to ensure secure and trustless transfers.
Through this service, users can:
- Safely deposit BTC Runes to receive wrapped Runes (wRunes) on the Spark side;
- Deposit Spark wRunes to redeem BTC Runes back.
btc_indexer
- service that allows to index Runes transactions and provide tx tracking functionality with callback response after tx finalization;crates
- main utils or useful crates that are used along the repository;docs
- docs and schemes saved for reproducibility;gateway
- main service for resolving user requests and interacting with other services;infrastructure
- folder that contains main config files for both local and production deployment;spark_balance_checker
- service for checking Spark token balance for given address;tests
- e2e tests that cover main flows;verifier
- folder that contains verifier implementation which can be run in any number of instances.
-
Via Docker Compose
- Run
docker compose -f ./infrastructure/docker-compose.yml up -d
.
- Run
-
Local building
- For running everything locally use command
./infrastructure/scripts/run-everything-local.sh
. - For stopping it run
./infrastructure/scripts/shut-down-everything-local.sh
.
- For running everything locally use command
Additional docs you can be found by the link.