A web application that provides accurate property price estimates for homes in Morocco, leveraging machine learning models and the Bank Al-Maghrib real estate price index (IPAI).
# Morocco Property Value Estimator
A web application that provides accurate property price estimates for homes in Morocco, leveraging machine learning models and the Bank Al-Maghrib real estate price index (IPAI).
## Overview
The Morocco Property Value Estimator is a full-stack web application that helps users estimate the market value of residential properties across major Moroccan cities. The application combines a user-friendly Laravel frontend with powerful Python machine learning models to deliver accurate price predictions based on property characteristics and location data.
## Key Features
- **Property Value Prediction**: Estimate property values based on multiple factors including location, size, age, and amenities
- **City & Neighborhood Selection**: Support for major Moroccan cities including Casablanca, Marrakech, Rabat, Tangier, and more
- **BKAM IPAI Integration**: Incorporates the Bank Al-Maghrib real estate price index (IPAI) to adjust valuations based on current market trends
- **Separate Models**: Different prediction models for apartments and villas to ensure accuracy
- **Responsive Design**: Clean, modern interface that works across desktop and mobile devices
## Technology Stack
### Frontend
- **Laravel**: PHP web framework for the application structure
- **Blade Templates**: For rendering the user interface
- **HTML/CSS/JavaScript**: For the responsive user interface
### Backend
- **Laravel**: Handles form validation, routing, and API communication
- **Python**: Powers the machine learning prediction system
- **Scikit-learn**: For the property value prediction models
### Data
- **BKAM IPAI Data**: Real estate price index from Bank Al-Maghrib (T4 2024)
- **Property Dataset**: Training data for the machine learning models
## Project Structure
```
Morocco-price-estimator/ # Laravel application
├── app/
│ └── Http/Controllers/ # Contains PriceEstimatorController …