Web3 Vault
A web app for storing funds via a Solidity smart contract on the Sepolia testnet. MetaMask for the handshake, Web3.js for everything after.
Context
School module project. Goal: write and deploy a real smart contract to a testnet, then build a web frontend that talks to it end-to-end. Wallet integration, balance reads, transaction history. The full Web3 handshake, not a mock.
Approach
Solidity contract deployed to the Sepolia Ethereum testnet. Containerised React frontend using Web3.js. MetaMask as the wallet provider. The flow: click connect → check that a wallet provider is available (else a browser alert) → confirm the connection prompt in the wallet → on success, load the balance from the contract, then read its transaction history off-chain.
Outcome
Working end-to-end demo. Wallet connects, balance loads from the contract, transaction history reads from the chain. Self-contained Docker container, deployable anywhere with a testnet RPC. Documentation private.
Stack
- Contract
- Solidity
- Sepolia testnet
- Frontend
- React
- Web3.js
- Docker
- Wallet
- MetaMask

