This repository contains the code for a smart agricultural mobile application developed using Flutter and Dart. The app allows users to monitor environmental data (temperature, humidity, and rain) in real-time, track specific terrain data, and get recommendations for plants suited to specific weather conditions.
The app is integrated with an ESP32 microcontroller and multiple sensors (humidity, temperature, and rain). It uses MQTT for communication and stores data in MongoDB.
- User Authentication: Allows users to register and log in to the app.
- Real-time Weather Monitoring: Provides temperature, humidity, and rain data based on the userβs location.
- Data History: Users can view historical data of environmental conditions.
- Terrain Management: Users can track data from different terrains and add new terrains.
- Plant Recommendations: Based on current environmental conditions, users can get recommendations for suitable plants.
- User: Can register, log in, and interact with the system by checking weather data, terrain information, and plant recommendations.
- MQTT Broker: Ensure the MQTT broker is set up to handle data transmission between the ESP32 and the server.
- MongoDB: Configure MongoDB to store the sensor data. You can host MongoDB locally or use a cloud solution like MongoDB Atlas.
- Integration with weather APIs for more accurate data.
- Improved UI for better user experience.
- Notifications for extreme weather conditions.