8000 GitHub - FantomCode25/GG_Coders
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

FantomCode25/GG_Coders

Repository files navigation

Logo

KrishiMitra

Just a great tool to empower farmers

GG_Coders
FantomCode2025 4th edition
11/04/2025

📖 Table of Contents

  1. Introduction
  2. Problem Statement
  3. Solution Overview
  4. Tech Stack
  5. Architecture / Diagram (if any)
  6. Installation & Usage
  7. Team Members

🧠 Introduction

This project is a unified agri-support platform tailored for smallholder farmers, especially those with limited digital access. It enables farmers to receive crop-related insights, weather-based farming tips, irrigation and pesticide schedules, and direct access to a crop marketplace—either via a mobile app or an automated phone call service.

By making farming data and expert advice accessible to all, we aim to bridge the digital divide in agriculture and increase profitability for underserved rural communities.

❗ Problem Statement

Smallholder farmers in rural areas face multiple challenges:

  • Lack of personalized crop advice and scientific farming knowledge.

  • Dependence on middlemen, leading to reduced profits.

  • No digital access or technical literacy, excluding them from agri-tech advancements.

  • Ineligibility for credit, due to lack of formal transaction records or farm documentation.

These issues result in poor yields, financial instability, and minimal growth, keeping farmers locked in a cycle of low income and inefficiency.

✅ Solution Overview

Our platform provides a dual-access solution for farmers—via an Android app and a phone-based voice interface. Key features include:

  • 📲 Farmer Registration: Captures key details like location, crops, and land size to tailor recommendations.

  • 🌱 Crop & Process Recommendations: Uses ML to suggest best-fit crops and ideal sowing practices.

  • 💧 Irrigation and Pesticide Scheduling: Offers dynamic alerts based on crop type, weather, and location.

  • 🛒 Inbuilt Marketplace: Enables direct crop sales, bypassing middlemen.

  • ☎ Phone Service for Non-Smartphone Users: Ensures inclusivity for digitally disconnected farmers.

  • 📈 Data Generation for Credit Access: Transaction and farming data helps farmers build a credit profile for future financial inclusion.

Below is a screenshot of the dashboard interface design (implementation may differ):

Dashboard Design Shot

This solution brings accessibility, empowerment, and profitability directly into the hands of farmers.

🛠️ Tech Stack

twilio React TailwindCSS Node.js Express.js MongoDB Ngrok Npm python scikit numpy pandas fastapi matplotlib

🧩 Architecture Diagram

Architecture Design Shot

🧪 Installation & Usage

Prerequisites

  • Node.js >= 20
  • Python >= 3.12
  • Ngrok

Steps

Firstly, set up the following enviorment variables and store it in a .env in backend folder (one will have to set up a twilio account first)

MONGO_URI
JWT_SECRET_KEY
GEMINI_API_KEY
TWILIO_ACCOUNT_SID
TWILIO_AUTH_TOKEN
TWILIO_PHONE
ACCUWEATHER_API_KEY
# Clone the repository
git clone https://github.com/FantomCode25/GG_Coders.git

# Navigate into the project directory
cd GG_Coders

Steps to run frontend

# Navigate to frontend
cd frontend

# Install npm packages
npm install

# Run the website
npm run dev

Steps to run backend

# Navigate to backend
cd backend

# Install packages
npm install

# Start server
node server.js

Steps to run ml-model

Here one must ensure of that the datasets

  • datasets/crop-predictor-with-fertilising-days.csv
  • datasets/vegetable-prices.csv

The columns respectively are:

  • datesk,Item Name,Date,price (dataesk is just Date but a number)
  • Temparature,Humidity,Moisture,Soil Type,Crop Type,Nitrogen,Potassium,Phosphorous,Fertilizer Name,fertilise_once_in_days
# Navigate to ml-model
cd ml-model

# Install Python packages
python -m env .venv
source .venv/bin/activate # on linux
.venv\Scripts\activat # on windows
pip install -r requirements.txt

# Run the ML model
uvicorn main:app --reload --host 0.0.0.0 --port 8000

To share your API over the internet we will make use of ngrok, run the following on a separate terminal. Use the link given by the below commands for your API calls.

# This just makes your local domain a public domain
ngork http 8000

Additionally we provide metrics when the model is first trained in the models/metrics folder. These images will be of great help for those who want to know more about the acuracy and other metrics of their ml model.

Steps to make API call to access ML model

With the link obtained from ngrok use one can use the following POST request

  • /predict-price
  • /predict-crop-fertilizer
  • /recommend-fertilizer

Each of them has the following attributes

predict-price
{
  "item_name": "string",
  "date": "string"
}
predict-crop-fertilizer
{
  "Temparature": 0,
  "Humidity": 0,
  "Moisture": 0,
  "Soil_Type": "string",
  "Nitrogen": 0,
  "Potassium": 0,
  "Phosphorous": 0
}
recommend-fertilizer
{
  "Temparature": 0,
  "Humidity": 0,
  "Moisture": 0,
  "Soil_Type": "string",
  "Nitrogen": 0,
  "Potassium": 0,
  "Phosphorous": 0,
  "crop_name": "string"
}

One can learn more about this from the /docs page.

Team Members

(back to top)

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •  
0