Inspiration
a Many traditional civic participation programs have experienced challenges in getting more people involved in the process, especially younger generations. Cleaning up is perceived as an unpleasant task that does not benefit anyone, and it is treated as a boring administrative task rather than an activity involving the community. It dawned on us that if we incorporate new gaming concepts, design with users' needs in mind, and employ verification systems, we can completely change the relationship between the citizens and the environment around them.
What it does
PLATZ is an AI-based civic system that aims at decentralized and incentive-driven urban cleanups. Decentralized Coordination: PLATZ users form “squads”, employ a geo-interactive dashboard for identifying environmental hazards, and organize specific cleanup missions.
AI Vision Validation: To avoid the hassle of manually checking if the task was completed, users take pictures of the cleanup process. Using our AI-based Vision Pipeline, we categorize the threat type (for instance, toxic waste, recyclable waste), measure the volume, and assign reputation points according to the environmental effect of the cleanup effort.
Intelligent Onboarding: Contextual AI Agent: An AI Agent serves as the platform’s personal concierge, providing guidance in complex tasks, presenting information about the local environment, and suggesting relevant pollution zones based on user behavior.
How we built it
We designed PLATZ to be a high-performing, full-stack enterprise application that leverages the Next.js App Router for optimal server-side rendering and dependable API endpoints. Our data layer uses Supabase (PostgreSQL) to handle OAuth authentication, database storage for user information, and telemetry logging to generate the global leaderboards.
To enable a well-rounded ecosystem, we integrated multiple potent third-party APIs into our solution stack:
- Google Gemini APIs: Provides the foundation of our intelligence. The Vision module classifies the more intricate images used for environmental threat detection, while the LLM is what allows our concierge agent functionality.
- Mapbox GL JS API: Creates our highly customized maps, enabling us to render complex vector tiles for environmental hotspots.
- OpenWeatherMap API: Ingests real-time meteorological data and modifies hotspot accessibility scores accordingly (such as providing warnings about extreme weather or adding multiplier points to certain conditions).
- Google Maps Geocoding API: Converts the latent EXIF GPS coordinates from user images into neighborhood metrics and location descriptions.
- Resend API: Facilitates all email communication, including alerts about dangerous hotspots near a user's registered neighborhood.
The algorithmic scoring runs dynamically, calculating the rewarded points (P) via our automated environmental impact matrix:
$$ P = \sum_{i=1}^{n} (T_i \times V_i \times W_f) \times S_m $$
(Where T is the Threat Level, V is Volume, W_f is the Weather factor derived from OpenWeatherMap, and S_m is the active Squad Multiplier.)
Challenges we ran into
- Vision Determinism in AI: Getting high confidence levels from the vision model under varying light conditions and difficult backdrops such as streets and vegetation entailed careful prompt and temperature tweaking.
- Microservices in API Integration: The synchronized execution of Gemini, reverse geocoding API, and OpenWeatherMap within less than one second on the Next.js edge server called for heavy caching and microservice architecture.
- State Management: Real-time leaderboard management using Supabase and dynamic vector map updates using Mapbox vectors entailed strict state management following React’s concurrency guidelines.
Accomplishments that we're proud of
- Zero-Trust Verification Pipeline: Physical world verification was successfully automated through computer vision and geofencing. Gamification abuse is prevented by the system and is free from human intervention.
- API Integration without Compromising UX/UI: Our architectural design successfully allowed the integration of mapping, weather, communication, and reasoning services without hindering the end user’s interaction experience.
- Enterprise-grade UX/UI: Design system guidelines were strictly followed, making use of Tailwind CSS components to create an interface that competes with consumer-level applications.
What we learned
Scalability in Architecture: Our knowledge about serverless architecture has improved immensely, especially when considering how to use defensive programming when we need third-party APIs with unpredictable rates (such as LLMs and geocoding services).
- AI as an Infrastructure Tool and Not a Feature: The paradigm shift in using AI as nothing but a tool for parsing data became clear to us.
- Data Synthesis: Data synthesis from various data sources (including weather, geospatial, and visual information) into one unified impact score has helped us understand how to synthesize multi-dimensional data.
What's next for Platz
- API Integrations for Municipalities: Our intention is to connect our app to city Open Data portals such as the 311 service to have their litter reports auto-fill on our map.
- Predictive AI Models: Predictions on the locations in which litter is likely to accumulate using historical data and weather trends.
- Corporate Sponsorships for CSR Campaigns: Using smart contracts to enable companies to sponsor environmental goals. If the cleanup goal is achieved by an AI-verified squad, micro-grants are issued.
Built With
- amazon-web-services
- figma
- framer-motion
- github-actions
- githubactions
- google-gemini-api
- google-maps-geocoding-api
- graphql
- json-web-tokens-(jwt)
- mapbox
- next.js
- node.js
- openweathermap-api
- postgis
- postgresql
- radix-ui
- react
- resend
- shadcn/ui
- supabase
- supabase-storage
- tailwind-css
- twilio
- typescript
- vercel
- websockets
Log in or sign up for Devpost to join the conversation.