ITADN
leather-io/extension
README.md
以下内容由 AI 翻译,如有问题请点此提交 issue 反馈

[!WARNING]
此仓库现已弃用 Leather Web Extension 已迁移至我们的 monorepo。所有问题和错误报告应在此处提交。

查看旧扩展 README.md

Leather

Chrome Web Store coverage semantic-release storybook

Leather 是构建在 Bitcoin 上的应用最受欢迎且最值得信赖的钱包。通过这款经过实战检验的 Stacks 区块链钱包,连接应用并管理由 Bitcoin 和 Bitcoin L2 保障的资产。

📚 查看 Leather 开发者文档 →

📩 加入邮件列表以获取更新 →

Contibuting

请参阅我们的贡献指南

Development

本应用是一个 Web Extension。无法将其作为独立的 Web 应用程序运行。

src 目录下的每个子项代表其运行的脚本上下文。

Install packages

pnpm i

开发模式

pnpm dev

可选:运行测试应用

我们提供了一个测试应用,可与该扩展程序配合使用。它可方便地访问扩展程序所能执行的各种功能。

在另一个终端中,运行:

pnpm dev:test-app

在浏览器中加载扩展

您需要将其添加到您选择的浏览器中。Leather 仅支持 Chromium 和 Firefox 浏览器。当您运行 pnpm dev 时,它会将应用程序编译到 /dist 文件夹

测试

package.json 中提供了多个测试脚本。

集成测试要求在运行之前先构建扩展。可以使用以下命令为测试构建扩展。

pnpm build:test

集成测试使用 Playwright,这需要系统安装其所需的浏览器。以下命令将安装 Playwright 所需的所有内容。

pnpm playwright install --with-deps

请注意,已安装的浏览器与正在使用的 Playwright 版本相关联,在某些情况下(例如升级 Playwright 或切换分支时)可能需要再次运行上述命令。阅读文档以获取更多信息

所有集成测试均可使用以下命令运行:

pnpm test:integration

要运行一组测试,您可以使用:

pnpm playwright test specs/TEST.spec.ts
pnpm playwright test tests/specs --shard=3/8

要在运行测试时获取更多信息,您可以向 playwright 传递 --debug 标志或 --ui 标志。

在本地运行测试时,您必须在 .env 文件中添加以下内容:

WALLET_ENVIRONMENT=testing

单元测试

可以使用 vitest 运行单元测试:

pnpm test:unit

代码检查

代码检查和单元测试可以同时进行:

pnpm checks

生产环境

请参阅 Leather.io 上的说明,从源代码安装

或者,技术 用户可以在其机器上安装最新版本的 node 后,执行以下步骤。

从源代码构建

如果您已通过 Git 拉取了该仓库,请在该仓库的根目录内运行以下命令:

pnpm && pnpm prepare && pnpm build

该扩展现已构建在 ./dist 文件夹中。

Firefox 审阅者

要在 Firefox 模式下构建该扩展,需要设置 TARGET_BROWSER=firefox 变量。

pnpm && pnpm prepare && TARGET_BROWSER=firefox pnpm build

请注意,在干净环境中构建时,此处的代码与提交的构建代码可能存在差异。这是因为某些变量是在生产构建的 CI 范围内设置的。

安全

我们将系统安全视为最高优先级。但无论我们在系统安全方面投入多少努力,仍可能存在漏洞。

如果您发现安全漏洞,请使用以下任一沟通方式向我们报告:

请注意,此电子邮件仅用于报告安全漏洞。如有支持咨询,请联系 contact@leather.io。我们真诚地感谢您负责任地披露您的发现,并将考虑您的贡献以予以认可。

审计报告

2021 年第一季度,Leather 与 Least Authority 合作,这是一家在加密领域拥有经验的领先安全咨询公司,对 Leather 进行了审计。2021 年 4 月 29 日,在解决了初步发现中描述的重大问题,并经过 Least Authority 团队的最终批准后,提交了最终报告。

在此处下载并阅读完整报告