Ulimi-Smart is an intelligent, user-friendly, web-based agricultural management system designed specifically for Malawian farmers. This platform empowers farmers to manage crop records, predict crop yields (maize and tobacco), plan farming schedules, and track expenses and profits. Developed by Group 5, this system leverages machine learning and mo
# 🌾 Ulimi-Smart: Smart Agricultural Assistant for Malawi 🇲🇼
**Ulimi-Smart** is an intelligent, user-friendly, web-based agricultural management system designed specifically for Malawian farmers. This platform empowers farmers to manage crop records, predict crop yields (maize and tobacco), plan farming schedules, and track expenses and profits. Developed by **Group 5**, this system leverages machine learning and modern web technologies to support data-driven farming.
---
## 📌 Table of Contents
- Features
- Tech Stack
- Architecture
- Installation
- Usage
- Folder Structure
- Model Training
- Contributing
- License
---
## 🚀 Features
- 🌽 Predict crop yields for **maize** and **tobacco** using machine learning models.
- 🧾 Record and manage multiple **farms**, **crops**, and **expenses**.
- 📆 Plan and track **planting**, **harvesting**, and **seasonal activities**.
- 📊 Monitor **profitability** and financial health over time.
- 📂 Keep logs of **weather**, **soil**, and **growth** observations.
- 📅 Forecast crop output to inform market planning and household food security.
- 🔒 Secure login and authentication (JWT-ready).
- 🌐 Built by Malawians, for Malawians — tailored to local needs.
---
## 🛠 Tech Stack
| Category | Technology |
|------------------|--------------------------|
| Backend | Django 4.2+, Django REST Framework |
| Frontend | HTML5, Tailwind CSS |
| Database | PostgreSQL |
| ML Frameworks | scikit-learn, pandas, joblib |
| Authentication | djangorestframework-simplejwt |
| Other Tools | dotenv, CORS headers |
---
## 🧱 Architecture
Ulimi-Smart is structured using Django's modular app system. Each functional domain is a separate Django app:
- `core`: Core utilities and base models
- `farms`: Farm profiles and locations
- `crops`: Crop types and attributes
- `records`: Historical crop records
- `observations`: Soil, weather, and growth notes
- `expenses`: Cost tracking …