← Back to Home

EV Charging Platform

Built a full-stack marketplace connecting electric vehicle owners who need charging with hosts who have chargers available. Users discover nearby chargers on an interactive map, match with hosts, book time slots, and pay securely in real-time.

Main Features:

  • Interactive Map Discovery — Mapbox-powered map showing nearby available chargers with real-time marker states (available, matched, selected).
  • Two-way Matching System — Tinder-style matching where renters and hosts must mutually match before they can communicate or book.
  • Real-time Messaging — Socket.io-powered chat with instant delivery, read status tracking, and automatic room creation after mutual match.
  • Booking & Scheduling Engine — multi-step booking flow with date picker, hourly slot selection from host availability, and double-booking prevention.
  • Stripe Payment Processing — Payment Intents, Connected Accounts for host payouts, platform fee calculation (10% + processing fees), and webhook handling.
  • Push Notifications — Expo + Firebase notifications for match requests, new bookings, and incoming messages.
  • User Profile Management — multi-step onboarding with S3 image upload, charger/vehicle specs, weekly availability scheduling, and map-based location picker.
  • Account Type Switching — users can switch between host (charger owner) and renter (EV driver) roles within one account.
  • Email Verification & Auth — JWT-based authentication with email verification codes, password reset flow, and Argon2 password hashing.
  • Admin Dashboard — web analytics panel for user/booking/revenue/engagement metrics, date range filtering, Recharts visualizations, verification workflows, and account management.
  • Monorepo Architecture — mobile app, web app, and API in one repository with shared conventions.
React Native (Expo)TypeScriptReactZustandFastifyPostgreSQLSocket.ioStripeMapboxAWS S3Firebase