Bitcoin Mirror is a bitcoin light client that runs on ethereum.
Last updated Jan 20, 2026
70
Stars
10
Forks
5
Issues
0
Stars/day
Attention Score
33
Language breakdown
Solidity 68.0%
TypeScript 29.5%
CSS 1.8%
HTML 0.8%
▸ Files
click to expand
README
Bitcoin Mirror
#
# #
# # #
# # # #
# # # # #
# # # # # #
# # # # # # #
# # # # # # # #
# # # # # # # # #
# # # # # # # # # #
# # # # # # # # # # #
# # # # # #
+ # +
++++ ++++
++++++ ++++++
+++++++++
+++++
+
Bitcoin Mirror tracks Bitcoin on Ethereum
This lets you prove a Bitcoin payment. In other words, it's a Bitcoin light client that runs on the EVM.
Quick Start
Compile and test the contract
Install Forge. Then:
cd packages/contracts
forge test -vv
Run the submitter
Point Cloudflare Functions to your fork of the repo using wrangler.
The submitter will run automatically and reliably, on a schedule. See wrangler.toml.
You'll need to configure a few secrets, including ETHSUBMITTERPRIVATEKEY and ETHRPCURL. You'll also need a free API key for getblock.io. Set GETBLOCKAPIKEY.
Run the website
cd packages/website
npm ci
npm start
Deploy the contract
Ensure ETHERSCANAPIKEY is set. Then, run the following to deploy and verify.
cd packages/contracts
forge script -f $RPC_URL --private-key $PK -s 'run(bool)' --broadcast --verify DeployBtcMirror true
Run with false for a deployment tracking the Bitcoin testnet rather than mainnet.
🔗 More in this category