An end-to-end Machine Learning web platform for accurate, data-driven real estate valuation in Morocco.
DariPredictor - Moroccan Real Estate Estimator
An end-to-end Machine Learning web platform for accurate, data-driven real estate valuation in Morocco.
## Overview
**DariPredictor** is a modern, Full-Stack AI-powered platform specifically tailored to the Moroccan real estate market. It moves beyond subjective property pricing by leveraging a "Data-Driven", high-performance ensemble Machine Learning approach.
Designed with a sleek, minimalist Glassmorphism user interface, the platform boasts a highly responsive React frontend, a blazing-fast asynchronous Python API, and a robust Stacking Gradient Boosting predictor engine.
---
## Key Features
- **High-Precision Valuation:** Predicts hyper-local property prices based on engineered features including precise surface areas, neighborhoods, floor levels, and specialized amenities.
- **Transparent Predictions:** Surfaces real-time prediction confidence intervals (minimum/maximum property values) and explains the calculation rationale.
- **Interactive Geographic Intelligence:** Integrates dynamic Leaflet spatial selection, ensuring users can verify exact neighborhood boundaries.
- **Comprehensive Analytics Dashboard:** Visualizes holistic market trends, localized listing densities, and historical price variations.
- **Wizard-Style User Experience:** Fluid, state-managed React forms guided by a flawless step-by-step Glassmorphism interface.
---
## Architecture & Tech Stack
DariPredictor is meticulously structured into three highly decoupled, scalable layers:
### 1. The Client Layer (Frontend)
- **Framework:** React 18 powered by Vite
- **Styling Native:** Custom CSS Modules & CSS Variables supporting native Dark Themes
- **State Management:** React Hooks (useState, useEffect) with React Router DOM v6
- **Visualization:** Recharts & react-leaflet
- **HTTP Client:** Axios for robust API polling
### 2. The API Layer (Backend)
- **Framework:** FastAPI running on Python 3.13
- **Server:** …