A powerful Flutter-based smart agriculture management app that helps farmers optimize fertilizer usage, monitor crops, and control irrigation remotely. The app provides real-time sensor data, weather forecasts, and AI-powered recommendations.
![]() Immanuel Jeyam |
![]() Jijin Jebanesh |
-
π Home Dashboard
- Live sensor data visualization (soil moisture, temperature, humidity)
- Current weather and 24-hour forecast
- Quick access to motor control
-
β‘ Real-time Optimization
- One-click fertilizer optimization using ML model
- NPK level recommendations
-
π€ Gemini AI-Powered Analysis
- π¬ Chat with a Gemini-powered AI bot for instant answers
- πΎ Get contextual suggestions based on real-time weather and soil data
- π£οΈ Supports multiple regional languages for enhanced accessibility
- π§ AI learns from inputs and provides accurate insights
-
π¦ Weather Forecast
- 7-day weather forecast with remarks
- Weather alerts and recommendations
-
π° Irrigation Control
- Remote motor on/off control
- Automatic scheduling based on soil conditions
-
π Analytics Dashboard
- Live Sensor graph
-
π¬ Multi-language Chat Support
- Gemini-powered chat interface
- Regional language support for farmers
-
π€ Field Management
- Switch between multiple fields
- View field-specific sensor data
-
βοΈ Settings Page
- π€ View and manage your user profile
- π Toggle Email Alerts for critical updates
- π² Enable or disable Push Notifications
- π§ Switch Remote Motor Control Feature on/off
- πͺ Use the Logout Button to securely sign out
- π§ Flutter (Mobile App)
- π Python (ML Backend)
- π Node.js + Express.js (Backend)
- π₯ MongoDB (Realtime Database)
- π€ Gemini API (Analysis & Chat)
- π¦ WeatherAPI (Forecast Data)
βββ API
β βββ api.dart
β βββ mlApi.dart
β βββ weather_service.dart
βββ constants
β βββ buttonOutlined.dart
β βββ image_strings.dart
β βββ page_indicator.dart
β βββ sizes.dart
β βββ spacing.dart
β βββ text_strings.dart
βββ helper_functions
β βββ helper_functions.dart
βββ main.dart
βββ models
β βββ ferilizer_model.dart
β βββ nutritionData_model.dart
β βββ sensorData_model.dart
β βββ weatherData_model.dart
β βββ weather_model.dart
βββ pages
β βββ analytics2.dart
β βββ analytics.dart
β βββ home.dart
β βββ login.dart
β βββ settings.dart
β βββ week_screen.dart
βββ popups
β βββ fullscreen_loaders.dart
β βββ loaders.dart
βββ providers
β βββ analyticsProvider.dart
βββ routes.dart
βββ theme
β βββ custom_theme
β β βββ elevated_button_theme.dart
β βββ theme.dart
βββ utils
βββ adBox.dart
βββ analysis_box.dart
βββ appbar.dart
βββ CategoryItems.dart
βββ CFC.dart
βββ dataContainer.dart
βββ device_utils.dart
βββ home_container.dart
βββ linechart.dart
βββ npk_box.dart
βββ productBox_L.dart
βββ productBox_s.dart
βββ sensor_data_box.dart
βββ settingContainer.dart
βββ sharedPrefs.dart
βββ shimmerWidget.dart
βββ TC.dart
βββ TFD.dart
βββ weatherContainer.dart
The backend is built using Node.js with Express.js, handling:
-
Sensor Data Processing
- REST endpoints for receiving sensor data
- WebSocket support for real-time updates
- Data validation and sanitization
-
Machine Learning Integration
- Python child processes for ML model execution
- API endpoints for fertilizer recommendations
- Crop-specific prediction models
-
Weather Data Integration
- Weather API proxy endpoints
- Forecast data caching
- Weather alert system
-
Device Control
- IoT device management endpoints
- Motor control API
- Irrigation scheduling system
-
Authentication & Security
- JWT authentication
- Role-based access control
- API rate limiting
git clone https://github.com/IMMANUEL-88/ferti_optimizer.git
cd ferti_optimizer
flutter pub get
flutter run
Note: While you can clone and run the app locally, please be aware that:
- Some backend APIs are currently hosted on a local server (localhost), and others are hosted live.
- To experience full functionality (ML predictions, sensor data sync, motor control, etc.), youβll need to set up the backend environment locally or deploy it to a live server.
- The necessary environment variables (.env) are maintained privately and are not included in the repository for security reasons.