Inspiration

Tampa is one of the most vulnerable cities in America — sitting at the intersection of hurricane risk, coastal flooding, urban heat, and rapid population growth. We wanted to ask a simple but bold question: what if a city could think? What if emergency responders, city planners, and everyday residents all had access to the same real-time intelligence layer — one that doesn't just display data, but understands it? Tampa City of Tomorrow was born from that idea.

What it does

Tampa City of Tomorrow is a real-time smart city intelligence platform that layers critical urban data onto a live interactive map. It tracks flood and surge zones, evacuation routes, traffic congestion, power outages, EV charging availability, hospital status, air quality, heat risk zones, solar energy output, and city resource efficiency — all in one unified dashboard. At its core is a built-in City AI powered by a custom RAG pipeline connected to Gemini 2.0 Flash, allowing users to ask natural language questions and receive verified, location-specific answers in seconds. It also features intelligent routing to hospitals, shelters, and evacuation points, as well as proactive alerts for critical city events.

How we built it

The entire platform is built as a single, self-contained HTML file — no backend, no database, no framework. The interactive map is powered by Leaflet.js with OpenStreetMap tiles, with all city layers rendered using Leaflet's polygon, circle, and marker tools. Routing is handled by OSRM (Open Source Routing Machine) and address search uses Nominatim for geocoding. The AI chat uses a custom RAG pipeline that performs keyword-based retrieval against a structured in-memory knowledge base before passing relevant data to Gemini 2.0 Flash via direct API calls.

Challenges we ran into

Building a fully client-side application with no backend meant every service — AI, routing, geocoding, map tiles — had to be called directly from the browser, which introduced CORS limitations and API key exposure challenges. Designing the RAG pipeline to be accurate without a vector database was also a significant challenge; we had to carefully craft keyword retrieval logic to ensure the AI only answers from verified city data and never hallucinates. Keeping everything performant inside a single HTML file while managing multiple real-time data layers, animations, and API calls simultaneously required careful architectural decisions.

Accomplishments that we're proud of

We're proud of building a fully functional, deployable smart city platform in a single HTML file with zero backend infrastructure. The RAG pipeline is something we're particularly proud of — it meaningfully reduces AI hallucination by grounding every response in verified local data. The platform covers an impressive breadth of city intelligence categories, from flood risk to sustainability scoring, all tied together with a clean, professional UI that feels genuinely production-ready.

What we learned

We learned that you don't need a complex tech stack to build something powerful. Keeping the architecture simple — one file, client-side only, open-source APIs — forced us to be creative and deliberate about every decision. We also deepened our understanding of RAG systems and how retrieval quality directly impacts AI response accuracy. Most importantly, we learned how much untapped potential there is in applying AI to civic infrastructure.

What's next for Tampa City of Tomorrow

The next step is connecting the platform to live data feeds — real-time traffic APIs, NOAA flood sensors, and city utility data streams — replacing the static knowledge base with truly live intelligence. We also plan to add a secure backend to protect API keys, a mobile-optimized view for residents during emergencies, and expand the platform beyond Tampa to other high-risk cities. Long term, we envision Tampa City of Tomorrow as the foundation for a universal smart city operating system.

Built With

Share this project:

Updates