Deployed web app: https://plantz-frontend.onrender.com/
Democratizing Plant Care Through AI
- Problem Statement
- Solution Overview
- Key Features
- Technical Architecture
- Implementation Details
- Installation & Setup
- Future Roadmap
- Team
Many people struggle with plant care due to:
- Lack of specialized knowledge about different plant species
- Difficulty in identifying plant diseases and health issues
- Inconsistent care routines leading to plant deterioration
- Economic barriers to acquiring quality gardening resources
These barriers prevent many from successfully caring for plants, leading to frustration and plant loss.
PlantZ is an interactive application designed to break down these barriers by providing personalized, engaging guidance through:
- Expressive plant avatars that visually communicate care needs
- An intuitive dashboard for monitoring multiple plants
- A fully implemented Gemini API-powered conversational interface for natural language plant care advice
- A voucher-sponsor system to address economic barriers
Our aim is to make plant care accessible to everyone, regardless of their experience level, by simplifying complex information and providing tailored support.
- Personalized plant profiles with expressive avatars
- Visual indicators of plant health and care needs
- Customizable care schedules and notifications
- At-a-glance view of all plants and their status
- Clear care indicators and reminders
- Fully implemented Gemini API integration using the
gemini-1.5-flashmodel - Natural language interactions for plant care advice
- Expert-level assistance for identification, diagnosis and care recommendations
- Persistent conversation history for contextual advice
- AI-powered disease detection using EfficientNetB3, a CNN based model
- Evidence-based treatment suggestions
- High accuracy (98.93%) in identifying common plant diseases
- Economic barrier reduction through sponsored resources
- Partnership opportunities with gardening suppliers
- Sustainable ecosystem for both users and sponsors
Our application follows a modern MERN stack architecture with AI integration:
ββββββββββββββββββ
β Frontend β
β (React) β
ββββββββββ¬ββββββββ
β
βΌ
βββββββββββββββββ ββββββββββββββββββ βββββββββββββββββ
β Gemini API βββββββΊβ Backend βββββββΊβ MongoDB β
β Integration β β (Node.js) β β Database β
βββββββββββββββββ ββββββββββ¬ββββββββ βββββββββββββββββ
β
βΌ
ββββββββββββββββββ
β Models for β
βDisease Detection
| & |
|Stress Detection|
ββββββββββββββββββ
- Custom plant-inspired color palette using CSS Variables
- Typography system with Google Fonts for improved readability
- Reusable React components styled with Tailwind CSS
- Animation guidelines using Framer Motion
- Adaptive layout containers for cross-device compatibility
- Desktop navigation with persistent sidebar
- Mobile-optimized bottom navigation bar
- Fluid page transitions with Framer Motion
- Responsive CSS Grid layout for plant cards
- Clear status indicators for plant health
- Step-by-step form with React components
- Creation of personalized plant profiles
- RESTful API architecture following best practices
- Robust error handling and validation
- Efficient data management with MongoDB
- Complete implementation of Google's Gemini AI for plant care assistance
- System prompt engineering for specialized plant knowledge
- Technical specifications:
- Model:
gemini-1.5-flash - Context window: 128k tokens
- Response streaming for real-time interactions
- Contextual memory management to maintain conversation history
- Optimized token usage through history length limitations
- Error handling and fallback mechanisms
- Model:
- Asynchronous message handling
- Real-time generation of AI responses
- Session-based conversation history
- Secure voucher generation and validation
- Sponsor management backend
- Integration with user profiles
- CNN-based image analysis for disease detection throught EfficientNetB3 model
- Preprocessing pipeline for image enhancement
- High-performance metrics:
- Accuracy: 98.93%
- Total number of images in training dataframe before preprocessing: 179649β
- The number of classes in the dataset: 56 β
- Number of Augmented images created = 1193 β
- Final Training Images: 11200
- Testing Images: 9981
- Validation Images: 9981
- Dataset: https://www.kaggle.com/datasets/sadmansakibmahi/plant-disease-expertβ
- TensorFlow & Scikit-learn for model development
- NumPy, SciPy & Pandas for data manipulation
- Feature extraction through CNN layers
- End-to-end training with augmentation techniques
- Model saved to .onnx format for faster execution
- Algorithm used: Random Forest Classifier
- Workflow:β Exploratory data analysis, data preprocessing, model training & validation
- Accuracy: 94.583%β
- F1 Score (Weighted): 94.579%β
- Dataset: https://www.kaggle.com/datasets/prakritidas/plant-dataβ
- Secure MERN Stack Authentication with JSON Web Tokens (JWT)
- Asynchronous email verification
- Input sanitization and validation
- MongoDB NoSQL database
- Robust data models for users, plants and care history
![Database Schema]
# Clone the repository
git clone https://github.com/Palash3101/PlantZβ
# Navigate to the project directory
cd PlantZ
# Install frontend dependencies
cd frontend
npm install
cd ..
# Install backend dependencies
cd backend
npm install
cd ..
# Start development servers concurrently
# (Ensure you have concurrently installed: npm install -g concurrently)
npm run dev- Climate based early detection of potential plant issues
- Seasonal care adjustments
- Connectivity with IOT plant sensors for real-time monitoring
- Environmental data collection and analysis on large scale by using drones
- Multilingual support
- Partner with government and NGOs for wider reach
Meet the passionate developers behind PlantZ:
- Palash Mishra
- Prakriti Das
- Payghan Ashwin Shriram
- Tumuluri Abhiram
PlantZ - Breaking down the red tape of plant care, one leaf at a time.