Skip to content

Fruzh/solidity-local-testnet

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 

Repository files navigation

🛍️ Web3 DApp

Aplikasi Web3 sederhana untuk simulasi pembelian produk digital (E-Book JavaScript) menggunakan Ethereum di jaringan lokal Hardhat.


🖼️ Preview Website

Transaction request Request

Transaction successfully Success


📁 Struktur Folder

project-root/
├── react-dapp/       # Frontend React (dApp)
└── solidity/         # Smart contract + script deploy

🚀 Fitur

  • 🔐 Autentikasi via wallet (Metamask)
  • 💸 Beli produk menggunakan ETH (0.01 ETH)
  • 🔄 Reset status pembelian (oleh pemilik contract)
  • 📦 Smart contract sudah lengkap dengan ABI & auto-deploy address

🧰 Persyaratan

Pastikan sudah meng-install:

  • Node.js v16 atau lebih
  • Metamask di browser (Chrome/Brave/Edge)
  • Git
  • VS Code atau text editor lain

🔧 Cara Setup dari Awal

1. Clone Project

git clone https://github.com/Fruzh/solidity-local-testnet.git
cd solidity-local-testnet

2. 📦 Install Dependency

Untuk smart contract (Hardhat):

cd solidity
npm install

Jika belum pernah install Hardhat di proyek ini:

npm install --save-dev hardhat

Untuk frontend React:

cd ../react-dapp
npm install

Ini akan menjalankan jaringan lokal di http://127.0.0.1:8545 dan menampilkan 20 akun beserta private key-nya.

Contoh akun:

Account #0: 0x5Fb... (Private Key: 0xabc...)

🦊 Hubungkan Metamask

  1. Install Extension Metamask di metamask.io

  2. Import Akun dari terminal Hardhat:

    • Import akun dengan Private Key: Account → Import Account
    • Tempelkan salah satu Private Key dari Hardhat
  3. Tambahkan Network Lokal:

    • Network Name: Hardhat
    • New RPC URL: http://127.0.0.1:8545
    • Chain ID: 31337
    • Currency Symbol: ETH
  4. Pilih jaringan "Hardhat" di Metamask.


📦 Deploy Smart Contract

cd solidity
npx hardhat node

Buka terminal baru:

npx hardhat run scripts/deploy.js --network localhost

Ini akan:

  • Deploy TokoDigital.sol
  • Generate file contract-address.json dan contract-abi.json
  • Simpan alamat contract ke: react-dapp/src/contracts/contract-address.json
  • Simpan ABI ke: react-dapp/src/contracts/contract-abi.json

4. Jalankan Frontend (React dApp)

cd ../react-dapp
npm install
npm run dev

Aplikasi akan tersedia di http://localhost:5173


🛒 Cara Pakai Aplikasi

  1. Buka http://localhost:5173
  2. Klik "🔌 Hubungkan Wallet"
  3. Klik "🛒 Beli Sekarang" untuk membeli produk
  4. Jika kamu pemilik contract, tombol Reset Pembelian akan muncul

About

Local Web3 DApp for testing built with React and Hardhat on the Ethereum Virtual Machine (EVM)

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors