🚀 Pro Token Launchpad



📖 项目背景
Pro Token Launchpad 是一个面向 Web3 开发者和项目方的专业代币发布平台。随着区块链技术的快速发展,代币发行已成为 DeFi、NFT、GameFi 等领域的核心需求。然而,传统的代币发行流程往往需要:
- 编写复杂的智能合约代码
- 配置繁琐的开发环境
- 处理复杂的部署流程
- 缺乏用户友好的管理界面
本项目旨在解决这些问题,提供一个开箱即用、安全可靠、功能完善的代币发布解决方案,让任何人都能轻松发行和管理自己的代币。
核心价值
- 🎯 简单易用:无需深入了解 Solidity,通过 Web 界面即可完成代币发行
- 🔒 安全可靠:基于 OpenZeppelin 标准合约,经过充分测试
- 🌐 多链支持:支持以太坊主网、Sepolia 测试网、BSC 等多个网络
- 💰 功能完整:涵盖代币发行、转账、价格管理等全生命周期功能
- 🎨 专业 UI:现代化的暗黑主题设计,提供优秀的用户体验
✨ 功能特性
🪙 代币发行
-
ERC20 代币发行
- 自定义代币名称、符号、小数位数
- 设置初始发行量
- 支持价格设置(以 ETH/BNB 或其他代币计价)
- 一键部署到目标网络
-
ERC721 NFT 发行
- 创建 NFT 集合
- 设置 Base URI 和最大供应量
- 支持元数据管理
- NFT 铸造功能
💸 代币管理
-
代币转账
- 支持 ERC20 代币转账
- 实时余额查询
- 交易状态跟踪
-
价格管理
- 查询代币当前价格
- 设置/更新代币价格(仅所有者)
- 支持多种计价代币(ETH/BNB/其他 ERC20)
🌐 多网络支持
-
测试网络
- Sepolia Testnet
- Goerli Testnet(已弃用)
- Mumbai Testnet(Polygon)
- BSC Testnet
-
主网络
- Ethereum Mainnet
- BSC Mainnet
- Polygon Mainnet(计划中)
-
RPC 容错机制
- 多 RPC 端点自动切换
- 自动重试机制
- 网络状态监控
🎨 用户界面
-
现代化设计
- 暗黑主题,霓虹风格
- 响应式布局,支持移动端
- 流畅的动画效果
- 直观的操作流程
-
标签页导航
- 🚀 发布代币:选择类型并部署
- 💸 转账代币:代币转账功能
- 💰 价格管理:查询和设置价格
- 📱 钱包指南:使用说明
🚀 快速开始
前置要求
- Node.js >= 18.0.0
- npm 或 yarn
- 一个钱包账户(用于部署合约)
安装步骤
1. 克隆项目
git clone <repository-url>
cd solidity
2. 安装依赖
安装合约依赖:
cd hardhat
npm install
安装前端依赖:
cd ../app
npm install
3. 配置环境变量
在 hardhat 目录下创建 .env 文件:
cd hardhat
cp .env.example .env
编辑 .env 文件,填入你的私钥和 RPC 地址:
PRIVATE_KEY=0x你的私钥
SEPOLIA_RPC_URL=https://your-sepolia-rpc-url
MAINNET_RPC_URL=https://your-mainnet-rpc-url
⚠️ 安全提示:私钥请妥善保管,不要提交到 Git 仓库。
4. 编译合约
cd hardhat
npm run compile
5. 启动前端
cd app
npm run dev
访问 http://localhost:5173 即可使用平台。
📦 部署指南
合约部署
方式一:使用前端部署(推荐)
- 启动前端应用(见快速开始)
- 在"发布代币"标签页中:
- 输入你的钱包私钥
- 选择目标网络
- 填写代币信息
- 点击"发布代币"
方式二:使用 Hardhat 脚本
部署到测试网(Sepolia):
cd hardhat
npx hardhat run scripts/deployToken.ts --network sepolia
部署到主网:
npx hardhat run scripts/deployToken.ts --network mainnet
前端部署
开发环境
cd app
npm run dev
生产构建
cd app
npm run build
构建产物在 app/dist 目录,可以部署到:
- Vercel
- Netlify
- GitHub Pages
- 任何静态文件托管服务
网络配置
前端已预配置多个网络的 RPC 端点,如需添加新网络,编辑 app/src/lib/rpcConfig.ts:
export const NETWORK_CONFIGS: Record<string, NetworkConfig> = {
yourNetwork: {
name: "Your Network",
chainId: 12345,
rpcUrls: ["https://your-rpc-url"],
explorerUrl: "https://your-explorer-url",
currency: "YOUR",
},
};
🏗️ 技术架构
前端技术栈
- 框架:React 18 + TypeScript
- 构建工具:Vite
- 样式:Tailwind CSS
- Web3 库:
- Viem:以太坊 JavaScript 库
- Wagmi:React Hooks for Ethereum
- UI 组件:自定义组件库
智能合约
- 语言:Solidity ^0.8.24
- 标准库:OpenZeppelin Contracts
- 开发框架:Hardhat
- 合约标准:
- ERC20:可替代代币标准
- ERC721:NFT 标准
- Ownable:权限管理
项目结构
solidity/
├── hardhat/ # 智能合约项目
│ ├── contracts/ # 合约源码
│ │ ├── TokenFactory.sol # ERC20 代币工厂
│ │ └── NFTFactory.sol # ERC721 NFT 工厂
│ ├── scripts/ # 部署脚本
│ └── test/ # 测试文件
│
├── app/ # 前端应用
│ ├── src/
│ │ ├── components/ # React 组件
│ │ │ ├── TokenDeployTab.tsx # 代币部署
│ │ │ ├── ERC721DeployTab.tsx # NFT 部署
│ │ │ ├── TokenTransferTab.tsx # 代币转账
│ │ │ └── TokenPriceTab.tsx # 价格管理
│ │ ├── lib/ # 工具函数
│ │ │ ├── deployToken.ts # 部署逻辑
│ │ │ ├── rpcConfig.ts # RPC 配置
│ │ │ └── rpcHelper.ts # RPC 辅助函数
│ │ └── App.tsx # 主应用组件
│ └── package.json
│
└── README.md # 项目文档
🔧 使用示例
发行 ERC20 代币
- 打开"发布代币"标签页
- 选择"ERC20 代币"
- 填写信息:
- 代币名称:My Awesome Token
- 代币符号:MAT
- 小数位数:18
- 初始发行量:1000000
- 初始价格:0.001 ETH
- 点击"发布代币"
- 在钱包中确认交易
- 等待交易确认,获取代币地址
发行 ERC721 NFT
- 打开"发布代币"标签页
- 选择"ERC721 NFT"
- 填写信息:
- NFT 名称:My NFT Collection
- NFT 符号:MNC
- Base URI:https://your-metadata-api.com/
- 最大供应量:10000
- 点击"发布 NFT 集合"
- 在钱包中确认交易
管理代币价格
- 打开"价格管理"标签页
- 输入代币合约地址
- 点击"查询当前价格"查看价格
- 输入新价格并点击"设置价格"(需要所有者私钥)
🔒 安全说明
私钥安全
- ⚠️ 永远不要将私钥提交到 Git 仓库
- ⚠️ 永远不要在公共场合分享私钥
- ✅ 使用专门的测试钱包进行开发
- ✅ 生产环境使用硬件钱包或多签钱包
合约安全
- 所有合约基于 OpenZeppelin 标准库
- 建议在生产环境部署前进行安全审计
- 使用测试网络充分测试后再部署到主网
最佳实践
- 测试先行:在测试网络上充分测试所有功能
- 小额测试:主网部署前先用小额资金测试
- 代码审查:部署前仔细审查合约代码
- 备份重要信息:保存合约地址、交易哈希等关键信息
🛣️ 未来展望
短期计划(1-3 个月)
-
ERC1155 支持
- 多代币标准支持
- 批量铸造功能
- 灵活的供应量管理
-
自定义合约部署
- 上传自定义 Solidity 合约
- 合约验证功能
- 参数配置界面
-
增强的价格功能
- 价格历史记录
- 价格图表展示
- 多价格源聚合
中期计划(3-6 个月)
-
DEX 集成
- Uniswap 流动性添加
- 自动做市商(AMM)集成
- 交易对创建
-
代币经济模型
- 代币分配方案
- 锁仓机制
- 释放计划
-
多链扩展
- Polygon 主网支持
- Arbitrum 支持
- Optimism 支持
- Layer 2 解决方案集成
长期愿景(6-12 个月)
-
去中心化治理
- DAO 投票功能
- 提案系统
- 社区治理工具
-
高级功能
- 代币销毁机制
- 白名单管理
- 权限控制
- 多签钱包支持
-
生态系统
- 代币浏览器
- 项目展示平台
- 社区论坛
- API 服务
-
移动端应用
- iOS 应用
- Android 应用
- 移动端优化
📚 相关资源
文档
标准规范
测试网络水龙头
🤝 贡献指南
我们欢迎所有形式的贡献!
- Fork 本项目
- 创建特性分支 (
git checkout -b feature/AmazingFeature) - 提交更改 (
git commit -m 'Add some AmazingFeature') - 推送到分支 (
git push origin feature/AmazingFeature) - 开启 Pull Request
开发规范
- 遵循现有代码风格
- 添加必要的注释和文档
- 确保代码通过 lint 检查
- 编写单元测试(如适用)
📄 许可证
本项目采用 MIT 许可证 - 查看 LICENSE 文件了解详情。
🙏 致谢
- OpenZeppelin - 提供安全可靠的智能合约库
- Hardhat - 优秀的开发环境
- Viem - 强大的以太坊 JavaScript 库
- Wagmi - React Web3 Hooks
⭐ 如果这个项目对你有帮助,请给我们一个 Star!
Made with ❤️ by the Pro Token Launchpad Team
评论区