A comprehensive digital platform designed to modernize agricultural management, providing tools for fertilizer recommendation, machinery rental, expert consultation, and marketplace services.
The Smart Fertilizer Management System is a full-stack application built to empower farmers and agricultural stakeholders. It integrates machine learning for smart recommendations, a robust backend for managing complex agricultural workflows, and a modern, responsive frontend for an intuitive user experience.
- 🌾 Fertilizer Recommendation: ML-powered insights for optimal crop yields.
- 🚜 Machinery Rental: Seamless booking system for agricultural equipment.
- 👨🌾 Expert Consultation: Connect with authorized Agricultural Officers for tailored advice.
- 🛒 Agri-Store Marketplace: Buy and sell agricultural products and fertilizers.
- 🛡️ Multi-Role System: Dedicated dashboards for Admin, Seller, and Farmer/User.
- 🔔 Real-time Notifications: Stay updated on rental status, consultation reviews, and marketplace activity.
- 📊 Analytics Dashboard: Comprehensive view for admins to monitor platform activity.
- Framework: React 19 (Vite)
- Language: TypeScript
- Routing: React Router 7
- Styling: Vanilla CSS (Modern aesthetic)
- Runtime: Node.js
- Framework: Express.js
- Language: TypeScript
- Database: MongoDB (Mongoose ODM)
- Security: JWT & Bcrypt Auth, Helmet.js
- Language: Python
- Framework: Flask/FastAPI (Placeholder for
ml_service)
Before you begin, ensure you have the following installed:
- Node.js (v18+)
- npm or yarn
- Python 3.10+ (for ML Service)
- MongoDB (Local or Atlas instance)
-
Clone the repository:
git clone https://github.com/piumi2004/Smart_Fertilizer.git cd Smart_Fertilizer -
Install Root Dependencies:
npm install
-
Install Backend Dependencies:
cd backend npm install cd ..
-
Set up Environment Variables:
- Create a
.envfile in the root directory based on.env.example. - Create a
.envfile in thebackend/directory based onbackend/.env.example.
- Create a
You can run segments of the application individually or all at once.
From the root directory:
npm run dev:fullFrom the root directory:
npm run devFrom the root directory:
npm run dev --prefix backendFrom the root directory:
npm run dev:mlSmart_Fertilizer/
├── backend/ # Express + TS Backend
│ ├── src/ # Backend Source Code
│ │ ├── models/ # Mongoose Schemas
│ │ ├── routes/ # API Route Definitions
│ │ └── services/ # Business Logic
│ └── scripts/ # Database migration scripts
├── ml_service/ # Python Machine Learning Service
│ ├── data/ # Dataset storage
│ └── models/ # Trained model files
├── src/ # React + TS Frontend
│ ├── components/ # Reusable UI components
│ ├── pages/ # Application views/pages
│ ├── context/ # Global State Management
│ └── assets/ # Images and styles
├── public/ # Static assets
└── package.json # Root scripts and workspace config
PORT: Port for the server (default: 5000)MONGODB_URI: Connection string for MongoDBJWT_SECRET: Secret key for authenticationCORS_ORIGIN: Allowed frontend origins
This project is licensed under the ISC License.
Developed for Smart Agriculture Initiatives. 🌿📖