# Project export: parkSmart

This document was generated by HackStack to give an AI agent context about a hackathon project. Sections are labeled with their provenance; content marked as truncated was cut to keep this document small.

## Project metadata

- Hackathon: UC Berkeley AI Hackathon 2026
- Tagline: Find parking smarter — voice-powered, real-time, hands-free
- Devpost: https://devpost.com/software/parksmart-j6zm89
- GitHub: not linked
- Video: https://www.youtube.com/embed/4_nBvQP4DAI?enablejsapi=1&hl=en_US&rel=0&start=&version=3&wmode=transparent
- Team: contributor stats unavailable

## Devpost submission (written by the team)

### Inspiration

Finding parking in San Francisco and Berkeley is a nightmare. We've all driven in circles for 20 minutes, missed appointments, and gotten street cleaning tickets. Google Maps shows you 5 parking lots — not the 200+ street spots that actually exist. We wanted to build something that actually works: real data, real-time, and hands-free while you're driving.

### What it does

ParkSmart is like Waze, but for parking. It shows you real available parking spots on a live map, lets you navigate to them with turn-by-turn directions, and lets you control everything with your voice while driving. Key features: Voice AI : say "find me free parking near the City College of San Francisco" and Claude AI searches 200+ spots, picks the best one, and starts navigation — all hands-free. Real parking sign data : we integrated official SFMTA data (7,760 blockfaces) so every spot shows the exact posted sign: time limits, street cleaning schedules, permit zones. 3 smart modes : Driving (find a spot), Parked (manage your time, get warned before street cleaning), Walking (switch to foot navigation) .

### How we built it

Frontend: React + TypeScript + Vite + Tailwind CSS + Mapbox GL JS Backend: FastAPI + Python AI: Claude Sonnet 4.6 with real tool use — Claude actually calls our parking search API, routing API, and availability API rather than just generating text Data sources: OpenStreetMap (street parking), Google Places (parking lots), SFMTA Open Data (official SF parking regulations + street sweeping schedules) Database : SQLite with 7,760 parking regulations and 37,856 street sweeping records downloaded from SF Open Data

### Challenges we ran into

Data accuracy: OpenStreetMap has street parking data but it's inconsistent. We built a geometry-based estimation algorithm to calculate available spots from road length, then layered official SFMTA sign data on top for SF streets. Voice AI latency: A full voice round-trip (speech → Claude → 2 API calls (Mapbox and Claude) → response) takes 11-12 seconds in the real world, not the 2-3 seconds we expected. We redesigned the UI to show clear "thinking" states so users know the AI is working. GPS on mobile: Safari on iPhone blocks GPS on HTTP connections. We built a smart fallback system that detects your city (Berkeley vs SF) and falls back gracefully when GPS is unavailable. Marker clutter: Our first version showed 388 parking markers in Berkeley — it looked like a bug. We built density controls and distance-based filtering to keep the map clean and readable.

### Accomplishments we're proud of

Claude AI doesn't just talk about parking — it actually controls the app. Say "navigate to the closest free spot" and NavigationPanel launches automatically with a real route. We're showing more parking options than Google Maps in SF — 200+ spots vs their typical 5-10 lots. Real SFMTA government data means we can tell you exactly when street cleaning happens on your specific block, not just "check the signs." Built a fully functional PWA that judges can install on their phone in 30 seconds.

### What we learned

Real-world AI latency is 5-10x slower than sandbox testing. Always build for the real number. Government open data is incredibly powerful when you know where to find it. SF's SFMTA dataset has every parking sign in the city — we just had to download and query it. Voice UX is completely different from text UX. Users need visual feedback at every step because they can't see what's happening.

### What's next

AI Parking Agent: proactive spot recommendations that update every 30 seconds, spoken aloud while you drive SpotAngels integration: crowdsourced parking data from millions of real users across the US React Native mobile app: reuse 80% of the web logic for a real App Store app Berkeley parking data: partner with the City of Berkeley for official sign data like we have for SF Predictive availability: use historical crowdsource data to predict which spots will be open before you arrive

## README (from the GitHub repository)

No README available.

## Detected evidence (automated analysis)

No repository was indexed for this project. Claimed technologies below could not be checked against code.
- FastAPI (technology) — claimed on Devpost, not found in the code
- Python (language) — claimed on Devpost, not found in the code
- React (technology) — claimed on Devpost, not found in the code
- Tailwind CSS (technology) — claimed on Devpost, not found in the code
- TypeScript (language) — claimed on Devpost, not found in the code

## Codebase structure

No repository index available.

## Key source files

No repository index available; no source files included.