Contract live on Portal V3 testnet
A Strava for carbon.
Reward the journey you chose, not the car you own. MissionEV measures each trip, verifies it, and pays $MEV for the CO₂ you actually avoided.
On the next screen you connect MetaMask. No wallet? Explore with a demo account.
- Your wallet is your account
- No phone number, no password
- Open source, MIT licensed
Metro commute
Sample journey
- Distance
- 12.4 km
- Emitted
- 343 g
- Reference
- 554 g
Reward preview
+14.2$MEV
- Verified by the oracle
- Signed (EIP-712)
- Sent by your wallet
- Metro
- Electric bus
- Walking and cycling
- Electric car
- Electric two-wheeler
- Ola, Uber, Rapido
- Petrol car: measured, never rewarded
The problem
Clean-mobility rewards pay for what you own. They should pay for what you did.
Most schemes reward the vehicle in the garage. MissionEV rewards the trip.
An EV owner in a petrol cab
Owning a clean vehicle earns nothing by itself. MissionEV calculates the journey that actually happened, so a petrol cab ride earns no $MEV, even for an EV owner.
A metro rider with no vehicle
Metro, e-bus and walking trips need no vehicle at all. If a journey avoids CO₂ against its reference, it earns, whatever is parked at home.
EVs are not “zero emission”
Electricity is counted at the grid's own factor, 0.6751 kg CO₂ per kWh (CEA, FY 2025-26), so the comparison is honest on both sides.
How it works
From a commute to a verified reward in four steps
The oracle can sign but never submit: your wallet sends the transaction, so MissionEV never holds your funds or acts on your behalf.
- 1
Connect your wallet
Your MetaMask address is your account. No phone number, no password. No wallet? Look around with a labelled demo account.
- 2
Record a journey
Say how you travelled, then record with real GPS or a clearly labelled simulation. Ride receipts are read in your browser; the image never leaves your device.
- 3
Get it verified
Four checks run, then the verifier node recomputes the distance and the CO₂ itself and signs an EIP-712 message. The server only signs.
- 4
Earn $MEV
Your own wallet sends the transaction on Portal V3: 20 $MEV per kg of CO₂ avoided, a streak multiplier up to 3×, and a bonus for clean modes.
Try the maths
Pick a journey. Watch the carbon and the reward move.
This is the real calculation, not a mock-up: the same emissions engine and the same on-chain reward formula the app runs.
What MissionEV calculates
CO₂ avoided
203g
$MEV preview
14.1
203 g × 20 MEV/kg ÷ 1000 × 1× streak (1 day) + 10 MEV mode bonus
Same engine and reward formula as the app. Sample vehicles are illustrative: the app uses your own. $MEV is a prototype reward token, not a certified carbon credit.
Do it with your own tripsInside the app
Four screens, one flow
After you connect, the dashboard walks you through the same four screens every time.
Sign-in & profile
Connect MetaMask and say how you usually commute. Nine journey modes (plus an "other" that can't be calculated); vehicles are only a profile.
Capture trip
A live GPS map, four verification checks, and a carbon comparison with its formula and sources.
Rewards
Your $MEV balance, a simulated redemption catalogue and your on-chain activity.
Analytics
Emissions, mode share and a leaderboard. Community data is synthetic, and says so.
Why Portal V3
An EVM chain where commuters send their own transactions
The contract is live on Portal V3 testnet. Streaks and carbon score are stored on-chain per commuter, and every reward is a public record.
MissionEV v2 contract
Deployed and verified on Portal V3 testnet
- Address
0x0904244017324dc1bf7c611fe1236936ee65fc82- Chain
- Portal V3 · 420420777
- Check it yourself
- npm run contract:verify
9
journey modes the engine understands
20 MEV
per kg of CO₂ avoided, before streaks
3×
top streak multiplier, at 20 days
100+
automated tests, including the compiled contract
Live from Portal V3
Ask the chain, right now
This is not a mock-up. The site's server reads the real Portal V3 testnet and the deployed contract on every refresh. It is read-only: no wallet, no key, nothing is sent.
Read from the contract's logs
Recent on-chain activity
The latest recordCommute transactions on the deployed contract, read-only: no wallet, no key. A row proves a transaction happened. It does not prove the journey behind it was real travel: testnet demo trips, where a deployment allows them, look the same on-chain.
Honest by design
What is real today, and what is simulated
Every simulated result is labelled in the app. We would rather show the limits than hide them.
Real today
- A contract deployed and verified on Portal V3 testnet
- A carbon engine with cited emission factors and shown formulas
- A verifier node that recomputes everything before it signs
- MetaMask sign-in with network switching
- Receipt reading in your browser; the image is never uploaded
- 100+ automated tests, including the compiled contract in an EVM
Simulated, and labelled
- Demo accounts: no wallet, nothing on-chain
- Trips recorded in Simulated mode
- Redemptions: the contract has no redeem function
- Community analytics: synthetic data
- Metro and e-bus factors are placeholders, flagged as such
Next
- A first recordCommute sent from the web app on Portal V3
- Sign-In with Ethereum (a signed login and a server session)
- A durable store for the verifier node
Ready to see what your commute is worth?
Open the app, connect MetaMask, and record your first journey. It takes about a minute, and it never asks for a phone number.
No wallet? You can explore with a demo account first.