How rajeshmuddada123/ev-prediction works
SMART EV is an anonymous-device EV dashboard for vehicle setup, range estimation, charger discovery and booking, charging-session tracking, solar-aware charging, weather, security, and history. Users enter through the React app; views use the API client to reach Spring REST services, which apply domain logic and persist data. The README documents the broader product capabilities, while sampled source confirms selected booking, station, session, solar, and frontend wiring. Some unsampled feature links are therefore shown only where documented.
Main entry points: App.jsx Dashboard Shell · client.js REST Client · BookingService.java Booking Logic · HistoryController.java History Analytics API
Components 33
Dashboard
- Dashboard Shell
frontend/src/App.jsx - REST Client
frontend/src/api/client.js - Battery Setup
frontend/src/views/BatteryView.jsx - Home Overview
frontend/src/views/HomeView.jsx - Booking Wizard
frontend/src/views/BookingView.jsx - Station Finder
frontend/src/views/StationsView.jsx - Range View
frontend/src/views/RangePredictionView.jsx - Live Tracking
frontend/src/views/TrackingView.jsx - Solar Monitor
frontend/src/views/SolarView.jsx - Weather View
frontend/src/views/WeatherView.jsx - Security View
frontend/src/views/SecurityView.jsx - History Analytics
frontend/src/views/HistoryView.jsx
EV Operations
- Booking Logic
backend/src/main/java/com/smartev/service/BookingService.java - Station Directory
backend/src/main/java/com/smartev/service/StationService.java - Charging Sessions
backend/src/main/java/com/smartev/service/ChargingSessionService.java
Energy Insights
- Range Model
backend/src/main/java/com/smartev/service/RangePredictionService.java - Solar Forecast
backend/src/main/java/com/smartev/service/SolarService.java - Weather Data
backend/src/main/java/com/smartev/service/WeatherService.java
Backend Platform
- Security Monitoring
backend/src/main/java/com/smartev/service/SecurityMonitoringService.java - Request Inspection
backend/src/main/java/com/smartev/security/SecurityFilter.java - Notifications
backend/src/main/java/com/smartev/service/NotificationService.java - History Analytics API
backend/src/main/java/com/smartev/controller/HistoryController.java - Booking API
backend/src/main/java/com/smartev/controller/BookingController.java - Station API
backend/src/main/java/com/smartev/controller/StationController.java - Session API
backend/src/main/java/com/smartev/controller/ChargingSessionController.java - Station Records
backend/src/main/java/com/smartev/repository/ChargingStationRepository.java - Booking Records
backend/src/main/java/com/smartev/repository/BookingRepository.java - Session Records
backend/src/main/java/com/smartev/repository/ChargingSessionRepository.java - Solar Config Store
backend/src/main/java/com/smartev/repository/SolarSystemConfigRepository.java
Other components
- EV Driver
- OpenStreetMap
- OSRM Routing
- Open-Meteo
Connections 40
- EV Driver → Dashboard Shell: uses
README.md - Dashboard Shell → Home Overview: renders
frontend/src/App.jsx - Dashboard Shell → Battery Setup: renders
frontend/src/App.jsx - Dashboard Shell → Booking Wizard: renders
frontend/src/App.jsx - Dashboard Shell → Station Finder: renders
frontend/src/App.jsx - Dashboard Shell → Range View: renders
frontend/src/App.jsx - Dashboard Shell → Live Tracking: renders
README.md - Dashboard Shell → Solar Monitor: renders
frontend/src/App.jsx - Dashboard Shell → Weather View: renders
README.md - Dashboard Shell → Security View: renders
frontend/src/App.jsx - Dashboard Shell → History Analytics: renders
frontend/src/App.jsx - Booking Wizard → REST Client: requests
frontend/src/views/BookingView.jsx - Range View → REST Client: requests
frontend/src/views/RangePredictionView.jsx - Solar Monitor → REST Client: requests
frontend/src/views/SolarView.jsx - REST Client → Booking API: posts bookings
frontend/src/api/client.js - Booking API → Booking Logic: delegates
backend/src/main/java/com/smartev/controller/BookingController.java - Booking Logic → Station Records: looks up station
backend/src/main/java/com/smartev/service/BookingService.java - Booking Logic → Booking Records: persists booking
backend/src/main/java/com/smartev/service/BookingService.java - Booking Logic → Notifications: notifies
backend/src/main/java/com/smartev/service/BookingService.java - REST Client → Station API: requests stations
frontend/src/api/client.js - Station API → Station Directory: delegates
backend/src/main/java/com/smartev/controller/StationController.java - Station Directory → Station Records: queries
backend/src/main/java/com/smartev/service/StationService.java - Station Directory → OpenStreetMap: fetches charger data
backend/src/main/java/com/smartev/service/StationService.java - REST Client → OSRM Routing: fetches route
frontend/src/api/client.js - REST Client → Session API: starts sessions
frontend/src/api/client.js - Session API → Charging Sessions: delegates
backend/src/main/java/com/smartev/controller/ChargingSessionController.java - Charging Sessions → Session Records: saves sessions
backend/src/main/java/com/smartev/service/ChargingSessionService.java - Charging Sessions → Notifications: notifies
backend/src/main/java/com/smartev/service/ChargingSessionService.java - Range View → Range Model: requests prediction
README.md - Range Model → Station Directory: uses station data
backend/src/main/java/com/smartev/service/RangePredictionService.java - Solar Monitor → Solar Forecast: requests forecast
README.md - Solar Forecast → Solar Config Store: reads config
backend/src/main/java/com/smartev/service/SolarService.java - Solar Forecast → Weather Data: uses weather
backend/src/main/java/com/smartev/service/SolarService.java - Weather Data → Open-Meteo: fetches telemetry
README.md - Security View → Security Monitoring: uses monitoring
README.md - Request Inspection → Security Monitoring: inspects requests
- History Analytics → History Analytics API: requests analytics
README.md - History Analytics API → Booking Records: reads bookings
backend/src/main/java/com/smartev/controller/HistoryController.java - History Analytics API → Session Records: reads sessions
backend/src/main/java/com/smartev/controller/HistoryController.java - History Analytics API → Solar Config Store: reads solar records
backend/src/main/java/com/smartev/controller/HistoryController.java