這是一個100%去中心化的區塊鏈紅包應用。用戶可以連接錢包,設定金額和數量發送紅包,然後透過連結分享給他人領取。所有資料和操作都基於區塊鏈,完全不需要中心化伺服器,整個過程安全、透明、可追溯。

如果你感興趣,可以在 GitHub 上看看我的程式碼:redpacket‑dapp

功能亮點

技術棧

快速啟動

# 1. 安裝專案依賴
npm install
cd react-dapp && npm install && cd ..

# 2. 啟動本地區塊鏈節點
npm run node

# 3. 編譯智能合約
npx hardhat compile

# 4. 部署智能合約
npm run deploy

# 5. 啟動前端
npm run frontend

目錄結構

redpacket-web3/
├─ contracts/                # Solidity 智能合約
│  └─ RedPacket.sol
├─ react-dapp/               # React + Vite 前端
│  ├─ src/
│  │  ├─ components/         # 通用組件(錢包按鈕、創建表單等)
│  │  ├─ config/             # ABI、合約地址配置
│  │  ├─ hooks/              # 自定義 hooks(useWallet)
│  │  ├─ pages/              # 頁面(Home、ClaimPacket)
│  │  ├─ styles/             # 全域樣式
│  │  ├─ utils/              # Web3 工具函數
│  │  └─ App.tsx             # 路由與佈局
│  ├─ .env.example           # 前端所需環境變數說明
│  └─ package.json
├─ scripts/
│  └─ deploy.js              # Hardhat 部署腳本(會自動寫入前端配置)
├─ hardhat.config.js
└─ package.json              # 根目錄腳本(Hardhat + 前端一鍵啟動)

使用指南

創建紅包

  1. 打開前端並點擊右上角「連接錢包」。
  2. 填寫紅包總金額與份數,應用會在前端隨機拆分金額。
  3. 提交後在 MetaMask 中確認交易,等待區塊確認。
  4. 成功後可複製系統生成的領取連結,分享給朋友。

領取紅包

  1. 打開分享連結(URL 帶有 /claim/{packetId})。
  2. 同樣先連接錢包,然後點擊「點擊領取」。
  3. 簽名確認後等待區塊打包,頁面會顯示結果與剩餘份數。

環境變數

智能合約(RedPacket.sol)

核心方法:

Hardhat 節點或 BSC 測試網都可以復用以上接口,部署腳本會把最新地址同步到前端。若重新部署,請重新運行 npm run deploy

部署USDC (USDC.sol)

網路

Local Hardhat

BSC Testnet

常見問題

祝你搶紅包愉快!🧨

⚠️ 提醒:本專案僅用於功能與可行性測試,尚未部署至測試網或主網,未經過完整安全測試,請勿用於實際資產操作,由此產生的風險需自行承擔。

image

image

image

image

image

著作権表示

著者: MoeJue

リンク: https://ja.moejue.cn/zh-hant/posts/303/

ライセンス: クリエイティブ・コモンズ表示-非営利-継承4.0国際ライセンス

この作品は、クリエイティブ・コモンズ表示-非営利-継承4.0国際ライセンスに基づいてライセンスされています。

検索を開始

キーワードを入力して記事を検索

↑↓
ESC
⌘K ショートカット