📊 Data Sources

Provenance and status of all datasets powering KrishiDrishti

Districts
95
8 NE states
Yield Records
12,350
5 crops × 95 × 26yr
ML Models
6
XGBoost × 5 + LSTM
Active Datasets
10
all phases complete

✅ Active Datasets

✅
District Boundaries
GADM 4.1 · GeoJSON polygons with centroids — 8 NE India states
95 districts
Phase 2 · Active
✅
Crop Yield Data — Rice (Kharif)
Synthetic v1 (ICRISAT-based) · 2000–2025 · 95 districts · 8 NE states · flood year effects
2,470 records
Phase 2 · Active
✅
Crop Yield Data — Jute (Kharif)
Synthetic v1 · 2000–2025 · 95 districts · river plain districts weighted
2,470 records
Phase 6 · Active
✅
Crop Yield Data — Wheat (Rabi)
Synthetic v1 · 2000–2025 · 95 districts · cooler districts weighted
2,470 records
Phase 6 · Active
✅
Crop Yield Data — Mustard (Rabi)
Synthetic v1 · 2000–2025 · 95 districts · oilseed crop patterns
2,470 records
Phase 6 · Active
✅
Crop Yield Data — Maize (Kharif)
Synthetic v1 · 2000–2025 · 95 districts · kharif cereal patterns
2,470 records
Phase 6 · Active
✅
Synthetic Weather Data
Generated (IMD-based parameters) · District-level rainfall + temperature · flood year effects applied
648 records
Phase 5 · Active
✅
Weather Data (Open-Meteo)
Open-Meteo Historical API · Real daily rainfall + temperature 2000–2025 · 27 Assam districts · kharif + rabi
1,350 records
Phase 7 · Active
✅
Satellite NDVI (MODIS/GEE)
MODIS/061/MOD13A2 via Google Earth Engine · 16-day NDVI composites · 1km resolution · kharif + rabi · 2000–2023
1,269 records
Phase 7 · Active
✅
Soil Moisture + Solar Radiation (ERA5)
ERA5-Land via Copernicus CDS API · Volumetric soil water layer 1 + surface solar radiation · Assam · 2000–2024
918 records
Phase 8 · Active
✅ Security Hardened — Phase 9 Complete
Security headers (CSP, X-Frame-Options, X-Content-Type-Options, X-XSS-Protection) · API rate limiting (100 req/min global, 30 req/min predict) · Input validation with Pydantic · Global exception handlers · Error boundaries on all pages · ISR caching for static data · CORS origin whitelist · SQL injection protection via SQLAlchemy ORM