How abhijeetb0/car-price-ml-app works
This is a used-car resale-price prediction application. A user enters vehicle details in the React form; the frontend posts them to FastAPI, which runs the loaded scikit-learn pipeline and returns an INR estimate for display. Separately, the training script reads the CSV, prepares features, compares model/target configurations, and saves the selected model. The README documents Vercel and Render deployment. The referenced model artifact is not present in the supplied tree, so its runtime link is shown but its contents cannot be verified.
Main entry points: train.py Training experiments · main.py FastAPI endpoints · App.jsx Prediction form · main.jsx React entry
Components 16
User interface
- Prediction form
frontend/src/App.jsx - React entry
frontend/src/main.jsx
API serving
- FastAPI endpoints
backend/main.py - Car input schema
backend/main.py - Loaded ML pipeline
backend/main.py
Model lifecycle
- Trained model artifact
- Used-car dataset
data/raw/car_data.csv - Training experiments
backend/train.py - Clean and split
backend/train.py - Feature engineering
backend/train.py - Categorical encoding
backend/train.py - Regressor experiments
backend/train.py - Model evaluation
backend/train.py
Hosting
- Vercel frontend
- Render backend
Other components
- Car buyer
Connections 16
- React entry → Prediction form: renders
- Car buyer → Prediction form: enters details
- Prediction form → FastAPI endpoints: POST /predict
- FastAPI endpoints → Car input schema: validates
- FastAPI endpoints → Loaded ML pipeline: predicts with
- Loaded ML pipeline → Trained model artifact: loads
- FastAPI endpoints → Prediction form: returns estimate
- Training experiments → Used-car dataset: reads
- Training experiments → Clean and split: cleans and splits
- Training experiments → Feature engineering: fits pipeline
- Feature engineering → Categorical encoding: transforms features
- Training experiments → Regressor experiments: trains candidates
- Training experiments → Model evaluation: scores candidates
- Training experiments → Trained model artifact: saves selected model
- Vercel frontend → Prediction form: serves
- Render backend → FastAPI endpoints: hosts