🚀 Elevator Pitch

GitBanks ETTY Portal is a simple and secure tool that lets users bridge tokens from Polygon to their own custom blockchain, stake them to earn rewards, and boost APY through gameplay. It is built completely in Flutter Web and connects directly with MetaMask, making Web3 smooth and accessible for everyone.


💡 Inspiration

Most token bridges are complicated, centralized, or difficult for new users. Our goal was to build something:

easy to use

customizable

developer-friendly

powerful enough to work with any RPC the user chooses

This inspired the creation of GitBanks ETTY Portal, a universal dashboard for bridging, staking, and earning.


🛠 What it does

🔗 Bridge Tokens

Moves ETTY tokens from Polygon → GitBanks (custom chain). Default chain = Sepolia, but users can enter their own RPC URL and Chain ID.

🏦 Stake & Earn

Stake tokens on the destination chain and earn APY automatically.

⚡ Boost Rewards

100 Tap Miner points = +1% APY for 1 hour.

🦊 Connect to MetaMask

Works directly with MetaMask Browser Extension using:

window.ethereum

📊 Transaction History

Shows every action: bridge, stake, claim, unstake, burn.


🧱 How we built it

Flutter Web for the entire UI

web3dart + JS interop for blockchain calls

MetaMask injected provider for signing and sending transactions

Smart contracts deployed on:

Polygon Amoy (source)

Sepolia (destination demo)

Custom RPC (user-defined)

Clean state management using ChangeNotifier_

Code example used for bridging:

final tx = {
  "from": address,
  "to": contractAddress,
  "data": dataHex,
  "value": "0x0"
};
await ethereum.request(method: "eth_sendTransaction", params: [tx]);


🧩 Challenges we ran into

Handling MetaMask network switching (wallet_switchEthereumChain)

Gas estimation differences between RPCs

Flutter Web + Web3 + JS errors

Bridging succeeded only sometimes due to allowance timing issues

Making the UI update instantly on account/network changes

WASM warnings when building for the web


🏆 Accomplishments that we’re proud of

Fully functional cross-chain bridge

Complete staking system with live APY calculations

MetaMask extension integration (no mobile wallet needed)

A clean, responsive DeFi-style UI

Tap Miner game that boosts staking rewards

Custom RPC support — users can bridge to any chain they create


📚 What We learned

Deep MetaMask integration inside Flutter Web

Managing async blockchain states smoothly

Designing gas-efficient smart contracts

Cross-chain communication patterns

Deploying Flutter Web to Vercel

Handling RPC differences across networks

Built With

Share this project:

Updates