A modern Android application that uses AI to analyze crop plants and provide comprehensive care information. The app combines multiple AI services to deliver detailed, structured plant information with a beautiful Material Design 3 interface.
- Plant.id API Integration: Advanced plant recognition using computer vision
- High Accuracy: Provides confidence scores for plant identification
- Multiple Plant Support: Identifies various crop types and plants
- Gemini API Integration: Comprehensive plant information using Google's Gemini AI
- Structured Data: Parses AI responses into organized, searchable information
- Fallback Support: Wikipedia integration when AI services are unavailable
- Material Design 3: Latest Android design guidelines
- Responsive Layout: Optimized for different screen sizes
- Color-Coded Information: Visual hierarchy for easy information scanning
- Interactive Elements: Smooth animations and transitions
- Scientific name and classification
- Plant family and taxonomy
- Common names and synonyms
- Plant type (Annual, Perennial, Biennial)
- Total growth duration
- Detailed growth stages with timelines
- Stage-specific care requirements
- Sunlight: Specific light requirements
- Water: Detailed watering instructions
- Soil: Soil type and pH preferences
- Temperature: Optimal temperature ranges
- Humidity: Humidity requirements
- Spacing: Plant spacing guidelines
- Practical growing advice
- Interesting plant facts
- Care best practices
- Troubleshooting tips
- Plant health status detection
- Disease identification and severity
- Treatment recommendations
- Preventive care tips
- Jetpack Compose: Modern declarative UI framework
- Material Design 3: Latest design system
- Navigation Compose: Type-safe navigation
- ViewModel: State management and lifecycle awareness
- Plant.id API: Plant identification service
- Google Gemini AI: Natural language processing for plant information
- Wikipedia API: Fallback information source
- Retrofit: HTTP client for API communication
- Hilt: Dependency injection
- Repository Pattern: Clean architecture
- Structured Data Models: Type-safe data handling
- Error Handling: Graceful fallbacks and user feedback
- Android 7.0 (API level 24) or higher
- Internet connection for AI services
- Camera access for plant photos
- Android Studio Hedgehog or later
- Java 17 or higher
- Kotlin 1.9.0 or higher
- Android Gradle Plugin 8.0 or higher
- Download the APK file
- Enable "Install from Unknown Sources" in Android settings
- Install the APK
- Grant camera and internet permissions
- Start analyzing plants!
- Clone the repository
- Open in Android Studio
- Sync Gradle files
- Add your API keys to
ApiConfig.kt:const val PLANT_ID_API_KEY = "your_plant_id_api_key" const val GEMINI_API_KEY = "your_gemini_api_key"
- Build and run the project
- Sign up at plant.id
- Get your API key from the dashboard
- Add to
ApiConfig.kt
- Get API key from Google AI Studio
- Add to the repository code
- Wikipedia API: No key required (fallback service)
- OpenAI API: For additional processing (optional)
- Open the app
- Tap the camera button
- Take a clear photo of the plant
- Ensure good lighting and focus
- Submit for analysis
- Confidence Score: How certain the AI is about the identification
- Health Status: Overall plant health assessment
- Care Requirements: Detailed care instructions
- Growth Information: Lifecycle and growth stages
- Tips & Facts: Additional helpful information
- Take photos in good lighting
- Include leaves, flowers, or fruits for better identification
- Ensure the plant is clearly visible and in focus
- Avoid shadows or obstructions
- Purpose: Displays structured AI-generated plant information
- Features:
- Scientific information section
- Growth cycle with stages
- Care requirements grid
- Growing tips and facts
- Beautiful Material Design 3 styling
- Crop Header: Plant name, confidence, scientific name
- Health Status: Visual health indicators
- Disease Cards: Detailed disease information with remedies
- Lifecycle Cards: Growth stages with timelines
- Requirements Cards: Care requirements with icons
- Additional Info: Fertilizers, climate, harvesting tips
- Image Capture: User takes plant photo
- Plant Identification: Plant.id API identifies the plant
- AI Analysis: Gemini API provides comprehensive information
- Data Parsing: Structured data extraction and organization
- UI Display: Beautiful, organized information presentation
- Fallback: Wikipedia data if AI services fail
- Ensure Java 17 is installed and configured
- Update Android Studio to latest version
- Clean and rebuild project
- Check API key configuration
- Verify internet connection
- Check API key validity
- Ensure camera permissions are granted
- Clear app data if needed
- Monitor API usage limits
- Check API service status
- Verify API key permissions
- Implement proper error handling
- Offline Mode: Cache plant information for offline access
- Plant Database: Local database of common plants
- Care Reminders: Notification system for plant care
- Community Features: User plant sharing and tips
- AR Integration: Augmented reality plant identification
- Weather Integration: Local weather-based care recommendations
- Performance Optimization: Faster image processing
- Better Error Handling: More user-friendly error messages
- Accessibility: Screen reader support and accessibility features
- Internationalization: Multi-language support
- Analytics: Usage tracking and insights
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests if applicable
- Submit a pull request
This project is licensed under the MIT License - see the LICENSE file for details.
- Plant.id: For plant identification API
- Google Gemini AI: For natural language processing
- Wikipedia: For fallback plant information
- Material Design: For design guidelines and components
- Jetpack Compose: For modern Android UI development
For support, questions, or feature requests:
- Create an issue on GitHub
- Contact the development team
- Check the troubleshooting section
Made with β€οΈ for plant lovers and farmers everywhere!