v

Inspiration

Problem it solves
Urban drivers often waste 10–20 minutes circling for a single parking spot, leading to:

  • Increased congestion: Cars searching for parking clog city streets and slow traffic flow.

  • Unnecessary emissions: Idling and slow‑speed driving add CO₂ and pollution.

  • Frustration & unpredictability: Drivers arrive at destinations stressed, uncertain if parking will be available.

  • Inefficient space usage: Lots sit empty while demand surges elsewhere; manual management can’t adapt in real time.

By delivering accurate, up‑to‑the‑minute availability and seamless booking, Parkify reduces wasted time, cuts emissions, and brings predictability to urban parking.

What It Does

How it works

  • Locate – Pick a city/area via dropdown or map search; Leaflet.js then plots live parking pins fetched from the backend.

  • Check – Click or hover a pin to see total vs. free slots, time‑window restrictions, and distance from your location.

  • Reserve – Hit “Book” to lock your slot in the PHP/MySQL backend, receive an instant confirmation, and watch a celebratory confetti burst.

  • Manage – View all past and upcoming reservations in your profile (with invoices), while admins can swiftly add or adjust slots through the dashboard.

  • Assist – Call on “Sparky” via a floating Dialogflow widget for tips, lot suggestions, or step‑by‑step booking help.

How We Built It

  • Frontend: HTML5, CSS (glassmorphism), vanilla JavaScript, Canvas particles

  • Mapping: Leaflet.js + OpenStreetMap (Nominatim geocoder)

  • Backend: PHP 8 serving JSON endpoints on Apache/XAMPP

  • Database: MySQL 8 (users, spots, availability, bookings)

  • Extras: Confetti.js; Google Dialogflow chatbot; Git/GitHub for version & CI

Challenges We Ran Into

  • Real‑time synchronization of slot counts under high request volume

  • Map performance when rendering hundreds of pins and tooltips

  • Chatbot accuracy: training “Sparky” to handle diverse parking queries

  • Admin UX: making slot‑seeding intuitive without overwhelming the dashboard

Accomplishments We’re Proud Of

  • Fully interactive map with instant availability updates

  • Seamless booking flow complete with confetti celebration and invoice logging

  • Secure auth & booking history, giving users control over their reservations

  • End‑to‑end chatbot integration, guiding users with natural‑language support

What We Learned

  • API orchestration: chaining geocoding, mapping, and booking endpoints smoothly

  • Performance tuning in browser (debouncing map events, optimizing DOM updates)

What’s Next for Parkify

  • Payment gateway integration for in‑app payments and dynamic pricing

  • Push notifications to remind users of upcoming bookings or expiring slots

  • Predictive availability using historical data and simple machine‑learning models

  • Mobile app prototype for on‑the‑go reservation and navigation assistance

Share this project:

Updates