# fredom
**Repository Path**: palagend/fredom
## Basic Information
- **Project Name**: fredom
- **Description**: freedownladermanager
- **Primary Language**: Unknown
- **License**: Not specified
- **Default Branch**: main
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2020-11-17
- **Last Updated**: 2026-05-23
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# Fredom - 加密货币浏览器插件
> 一个轻量、安全、开源的多链加密货币浏览器插件,让您轻松管理数字资产,随时随地与 Web3 交互。
---
## 📖 概述
**Fredom** 是一款面向普通用户和开发者的浏览器扩展插件,支持多链钱包管理、去中心化应用(DApp)交互、资产追踪等核心功能。旨在降低 Web3 使用门槛,让每个人都能自由地探索去中心化世界。
Fredom 三层架构:用户交互层 → 核心服务层 → 外部网络层
| 特性 | 说明 |
|------|------|
| 🚀 **轻量快速** | 插件体积小,启动迅速,不拖慢浏览器 |
| 🔐 **安全优先** | 私钥本地加密存储,助记词永不触网 |
| 🌐 **多链支持** | 兼容 Ethereum、BSC、Polygon、Solana 等主流公链 |
| 🛠 **DApp 浏览器** | 无缝注入 Web3 Provider,一键授权连接 |
| 💹 **资产看板** | 实时显示代币余额、价格走势和交易记录 |
| 🔄 **一键兑换** | 内置去中心化代币兑换功能(DEX Aggregator) |
| 📊 **交易记录** | 完整的链上和链下交易历史查询 |
---
## 🚀 快速开始
### 安装
#### 从 Chrome Web Store 安装(推荐)
1. 打开 Chrome 网上应用店
2. 搜索 "Fredom Wallet"
3. 点击「添加至 Chrome」
#### 从源码构建安装
```bash
# 克隆仓库
git clone https://github.com/your-username/fredom.git
cd fredom
# 安装依赖
npm install
# 构建生产版本
npm run build
# 构建产物位于 dist/ 目录
# 在 Chrome 扩展管理页面(chrome://extensions)中
# 开启「开发者模式」→「加载已解压的扩展程序」→ 选择 dist/ 目录
```
### 初始化钱包
1. 安装插件后,点击浏览器右上角的 Fredom 图标
2. 选择「创建新钱包」或「导入已有钱包」
3. 设置主密码(用于加密本地存储的私钥)
4. ⚠️ **安全保存您的助记词**——这是恢复钱包的唯一方式
---
## ✨ 功能详情
### 🏦 钱包管理
- 创建/导入/导出 HD 钱包(BIP-32/BIP-39/BIP-44)
- 多账户管理,每个种子派生多个地址
- 硬件钱包支持(Ledger、Trezor)*(规划中)*
### 🔗 网络切换
| 网络 | RPC URL 示例 | 支持 |
|------|-------------|------|
| Ethereum Mainnet | `https://eth-mainnet.g.alchemy.com` | ✅ |
| BSC | `https://bsc-dataseed.binance.org` | ✅ |
| Polygon | `https://polygon-rpc.com` | ✅ |
| Arbitrum | `https://arb1.arbitrum.io/rpc` | ✅ |
| Solana | `https://api.mainnet-beta.solana.com` | ⏳ 开发中 |
### 🧩 DApp 集成
- 符合 [EIP-1193](https://eips.ethereum.org/EIPS/eip-1193) 标准的 Provider API
- 支持 `eth_requestAccounts`、`eth_sendTransaction` 等标准方法
- 方法调用权限弹窗确认,防止恶意授权
### 💰 资产管理
- 自动识别并展示主流代币(ERC-20 / BEP-20 / SPL)
- 自定义代币添加
- NFT 展示与传输 *(规划中)*
- 价格数据由 CoinGecko / CoinMarketCap 提供
---
## 🏗 项目结构
```
fredom/
├── src/ # 源代码
│ ├── background/ # 后台 Service Worker
│ ├── content/ # Content Script(页面注入脚本)
│ ├── popup/ # 弹窗 UI(Vue 3)
│ ├── ui/ # 插件内页(Vue 3 完整交易界面等)
│ ├── shared/ # 通用工具库
│ │ ├── crypto/ # 加密/解密、助记词、密钥派生
│ │ ├── chain/ # 区块链 RPC 交互
│ │ └── storage/ # chrome.storage 封装
│ └── types/ # TypeScript 类型定义
├── public/ # 静态资源(图标、manifest.json)
├── dist/ # 构建产物
├── tests/ # 单元测试与集成测试
├── docs/ # 开发文档
├── package.json
├── tsconfig.json
├── vite.config.ts # 构建配置(Vite)
└── README.md # 本文件
```
---
## 🛠 技术栈
| 技术 | 用途 |
|------|------|
| **TypeScript** | 主开发语言 |
| **Vue 3** | 弹窗与内页 UI(Composition API) |
| **Vite** | 构建工具 |
| **Viem** | 区块链 RPC 调用与账户管理 |
| **VueUse** | Composition API 工具库 |
| **BIP39 / BIP32** | 助记词与 HD 钱包 |
| **IndexedDB** | 本地加密存储 |
| **UnoCSS** | 原子化 UI 样式 |
| **Vitest** | 单元测试 |
---
## 🔒 安全说明
- **私钥始终本地存储**:所有私钥使用 AES-256-GCM 加密后保存在 IndexedDB 中
- **助记词仅明文出现在创建页面**:用户确认备份后立即清除内存中的明文
- **HTTPS 通信**:所有 RPC 请求走 HTTPS,防止中间人攻击
- **权限最小化**:插件 Manifest 只声明必要权限
- **定期安全审计**:代码开源,接受社区审查
> ⚠️ **风险提示**:加密货币资产具有市场波动风险。请妥善保管您的私钥和助记词,Fredom 团队无法帮助恢复丢失的私钥。
---
## 🤝 贡献指南
欢迎贡献代码、报告 Bug 或提出新功能建议!
1. Fork 本仓库
2. 创建您的特性分支:`git checkout -b feat/your-feature`
3. 提交您的变更:`git commit -m 'feat: add some feature'`
4. 推送到分支:`git push origin feat/your-feature`
5. 发起 Pull Request
### 编码规范
- 遵循 [Conventional Commits](https://www.conventionalcommits.org/) 提交规范
- TypeScript 严格模式,ESLint + Prettier 统一风格
- 单元测试覆盖率保持 80% 以上
---
## 📄 License
[MIT](LICENSE) © Fredom Contributors
---
## 📬 联系我们
- GitHub Issues:报告 Bug 和功能请求
- 项目主页:[https://gitee.com/palagend/fredom](https://gitee.com/palagend/fredom)
---
*让自由(Freedom)触手可及,去中心化世界的大门为您敞开。*