KrishokBondhu is a comprehensive agricultural assistance platform that helps farmers with crop recommendations, fertilizer suggestions, and plant disease detection.
- Plant Disease Detection: Upload plant leaf images to detect diseases
- Fertilizer Recommendation: Get personalized fertilizer recommendations based on soil conditions
- Crop Recommendation: Receive suggestions for suitable crops based on soil and weather conditions
- AI-Powered Chatbot: Agricultural assistance chatbot in Bengali language
- Frontend: Next.js, TypeScript, Tailwind CSS, Framer Motion
- Backend: FastAPI, Python
- AI/ML: TensorFlow, scikit-learn
- Authentication: Clerk
- Cloud Services: Cloudinary (image storage)
This project uses machine learning models trained on the following datasets:
-
Plant Disease Detection Model
- Based on Plant Disease Detection Notebook
- Detects various plant diseases from leaf images
- Supports multiple crops including tomato, potato, and pepper
-
Fertilizer Recommendation Model
- Based on Fertilizer Recommendation Notebook
- Provides fertilizer suggestions based on soil composition
- Takes into account NPK values and other soil parameters
-
Plant Disease Dataset
- Based on Plant Disease Detection Notebook
- Contains images of various plant diseases across different crops
-
Fertilizer Recommendation Dataset
- Based on Fertilizer Recommendation Notebook
- Includes soil characteristics and corresponding fertilizer recommendations
-
Bangladesh Soil Data
- Based on Fertilizer Recommendation Guide 2018
- Contains area-wise soil composition data for Bangladesh including:
- Nitrogen (N) levels
- Phosphorus (P) levels
- Potasium(K) levels
- pH values
- Data integrated into MongoDB for region-specific recommendations
The MongoDB database includes collections for:
- User profiles
- Disease predictions
- Area-specific soil data from FRG 2018
- Fertilizer recommendations
- Crop recommendations
- Clone the repository:
git clone https://github.com/yourusername/krishokbondhu.git
cd krishokbondhu- Install dependencies:
npm install- Set up environment variables:
cp .env.example .env.local- Run the development server:
npm run dev- Start the FastAPI backend:
cd plantdisease_detection_api
pip install -r requirements.txt
uvicorn main:app --reload/disease-detection: Plant disease detection endpoint/fertilizer: Fertilizer recommendation endpoint/crop: Crop recommendation endpoint/message: Chatbot interaction endpoint
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License - see the LICENSE file for details.
- Plant Disease Detection model based on work by babykamal on Kaggle
- Fertilizer Recommendation model based on work by babykamal on Kaggle
- Next.js for the frontend framework
- FastAPI for the backend framework