Inspiration
Floods hit neighbourhoods first, yet ordinary people rarely get clear, local, practical guidance. At the same time, community climate work such as clearing drains, clean-ups and tree planting is hard to trust: photos can be reused, edited or disputed. We wanted one honest product that helps people understand risk, act on it, and prove what their community actually did.
What it does
EcoShield AI follows one end-to-end story:
- Know the risk. A dashboard shows real 7-day rainfall and river-discharge forecasts for Faisalabad, Lahore and Jakarta, with the source, update time and uncertainty. An AI assistant explains the outlook in plain language and gives a preparedness checklist.
- Explore it in 3D. An interactive 3D colony lets users click buildings, switch risk and preparedness layers, and raise an illustrative flood level to see which homes would be affected. It is a clearly labelled simulation, not a prediction.
- Report and act. Citizens report blocked drains, flooding, clean-ups and tree planting with an optional photo. The server fingerprints the photo with SHA-256 and warns reviewers about possible duplicates (same file or similar wording).
- Human review. A reviewer approves, rejects or asks the author for more information. The AI can summarise a report and point out gaps, but it never approves or certifies anything.
- Prove the impact. For approved reports, a Solidity contract on the Sepolia test network registers the report ID plus two hashes (the photo and the record). No photos, text or personal data go on-chain.
- Verify publicly. Anyone can open a shareable page that re-reads the blockchain, compares the hashes, and lets them check a file in their own browser. It shows "Verified" only for a confirmed transaction whose hashes still match, and a clear warning otherwise.
A blockchain record shows that evidence was unchanged after approval. It does not prove the claim is true: that is what human review is for.
How we built it
- Frontend and backend: Next.js (App Router), TypeScript (strict) and Tailwind CSS on Vercel, using serverless route handlers and no always-on server.
- Data: Supabase Postgres with row-level security and a private Storage bucket for evidence.
- AI: Groq-hosted models called only from server code, with schema-validated output, prompt-injection fencing around user text, and a labelled demo mode as fallback.
- 3D: three.js through React Three Fiber, with procedural houses merged into vertex-coloured meshes (about 90 draw calls) and a keyboard-friendly list view as a fallback.
- Blockchain: a Solidity
ActionRegistrycontract (one registration per ID, hashes only), ethers v6 and Hardhat, deployed to Sepolia. - Weather: Open-Meteo forecast and flood APIs (no key required).
- Quality: 11 automated test suites, including the real SQL migrations run in an in-process Postgres, a mocked-fetch AI integration test, contract tests, a headless 3D scene test, WCAG contrast checks and an axe-core accessibility scan of every page.
Challenges we ran into
- Staying within a free-tier deployment (a 4.5 MB request limit and serverless time limits), which shaped the photo limit and the way transactions are confirmed.
- Making blockchain claims honest: "verified" appears only after a confirmed transaction whose hashes still match, and failures show clear warnings instead of fake success.
- Keeping a rich 3D scene fast by merging geometry, and testing it without a GPU.
- Hardening a demo for the public web: reviewer passcode, rate limiting, private photos and privacy-safe public pages.
Accomplishments we are proud of
- A complete, connected journey rather than disconnected demo pages.
- A strict separation of what is real (forecasts, reports, hashes, transactions) from what is simulated (the 3D colony and flood scenario), labelled everywhere.
- AI used where it helps and kept away from decisions that need a human.
What we learned
Blockchain is most useful when it does exactly one job (integrity of approved evidence), and trust comes from labelling limits clearly, not hiding them.
What's next
Real flood-hazard datasets and heat risk, a 2D map with report markers, real accounts and an admin console, wallet-signed submissions, notifications and a resolution workflow, and stripping photo location metadata.
Limitations
EcoShield AI is a hackathon prototype and not an emergency service or an official warning system. It covers three demo areas, uses shared demo accounts and a test network, and the 3D scene is simulated.
Built With
- ethereum
- ethers.js
- groq
- hardhat
- next.js
- pen-meteo
- postgresql
- react
- solidity
- supabase
- tailwindcss
- three.js
- typescript
- vercel


Log in or sign up for Devpost to join the conversation.