A full-stack decentralized application (DApp) for transferring Ethereum, built with React (frontend) and Solidity/Hardhat (backend smart contract).
crypt_transfer_web3/
│
├── client/ # React frontend (Vite, TailwindCSS)
│
└── smart_contract/ # Hardhat Ethereum smart contract project
- Send Ethereum: Transfer ETH to any address with a message and keyword.
- Transaction History: View all past transactions on the blockchain.
- Giphy Integration: Attach a GIF to each transaction using a keyword.
- MetaMask Integration: Connect your wallet to interact with the DApp.
- Modern UI: Responsive design using TailwindCSS.
git clone https://github.com/yourusername/crypt_transfer_web3.git
cd crypt_transfer_web3cd smart_contract
npm installCreate a .env file in smart_contract/:
ALCHEMY_API_URL=YOUR_ALCHEMY_SEPOLIA_URL
PRIVATE_KEY=YOUR_WALLET_PRIVATE_KEY
npx hardhat compilenpx hardhat run scripts/deploy.js --network sepoliacd ../client
npm installCreate a .env file in client/:
VITE_GIPHY_API=YOUR_GIPHY_API_KEY
After deploying the contract, update the contractAddress in src/utils/constants.js with your deployed contract address.
npm run devVisit http://localhost:3000 in your browser.
- React app (Vite)
- TailwindCSS for styling
- Connects to Ethereum via MetaMask and ethers.js
- Shows transaction history and allows sending ETH
- Hardhat project for Solidity smart contracts
- Contains
Transactions.solcontract - Scripts for deployment and testing
- Compile:
npx hardhat compile - Test:
npx hardhat test - Deploy:
npx hardhat run scripts/deploy.js --network sepolia
- Start dev server:
npm run dev - Build for production:
npm run build
MIT