21 个不稳定版本 (4 个破坏性更新)

0.5.0 2023年2月10日
0.5.0-rc.22022年12月31日
0.4.1 2022年11月23日
0.3.1 2022年7月6日
0.1.2 2022年3月17日

#5 in #utxo

Download history 1/week @ 2024-03-08 30/week @ 2024-03-29 6/week @ 2024-04-05

每月下载量72次

MIT 许可证

140KB
3.5K SLoC

BitMask Core

BitMask 钱包的核心功能 - https://bitmask.app

BitMask 是一个比特币钱包,也是一个浏览器扩展,用于访问比特币区块链上的去中心化网络应用程序。它旨在支持基于 UTXO 的智能合约协议,如 RGB,并计划支持 Omni 层、TARO 等其他协议。

Build status Crates.io npm: bitmask-core License: MIT+APACHE Telegram

用途

构建

这应该与 wasm-pack、trunk 或 x86-64 一起工作。

为了在 macos-aarch64 上编译,可能需要一些环境变量,更多详情请参阅 此处

如果遇到编译问题,请确保您正在使用最新的 Rust 版本进行编译。

要将此作为 NodeJS 模块构建,请使用: wasm-pack build --release --target bundler

测试

  1. 对 wasm32 进行 lint: cargo clippy --target wasm32-unknown-unknown
  2. 在浏览器中运行测试: TEST_WALLET_SEED="替换为包含测试网 sat 的钱包的 12 个单词助记词" wasm-pack test --headless --chrome

运行

要运行带有REST服务器的bitmaskd节点,无论是用于测试网页钱包,还是单纯为了增加隐私

cargo安装 --功能=服务器 --路径 .

然后运行 bitmaskd

开发

本应用的部分是用条件编译语句构建的,以支持wasm32。这对于在桌面平台上开发时检查lint和正确性非常有帮助

cargoclippy --目标wasm32-unknown-unknown --无默认功能 --发布

发布

在新版本发布后,按照以下步骤操作

  1. 运行 cargo update 更新到最新依赖。
  2. 运行 cargo +nightly udeps 查看是否有任何未使用的依赖项。

Docker

要在regtest中运行bitmask-core测试,请按照以下步骤操作

  1. 构建比特币节点 + electrum: docker compose build
  2. 启动和运行容器: docker compose up -d node1
  3. 加载命令行: source .commands
  4. 将一些硬币发送到主钱包地址: node1 sendtoaddress {ADDRESS} 10
  5. 挖一个区块: node1 -generate
  6. 运行测试: TEST_WALLET_SEED="替换为包含测试网sat的钱包的12个单词助记词" cargo test allow_transfer -- --test-threads 1

故障排除

1. 在容器重启后

A. 比特币节点不工作吗?

检查您的钱包是否已加载。为此,请运行命令 node1 loadwallet default

B. electrs节点不工作吗?

要停止electrs冻结,请运行 node1 -generate

依赖关系

~30–52MB
~817K SLoC