An AI-powered web application for mushroom farmers to analyze mushroom growth stages, track farming analytics, and receive environment recommendations for optimal cultivation conditions.
Core Features:
- User Authentication - Secure login/register with JWT token-based auth
- AI Image Analysis - Analyze mushroom images to determine growth stage (Immature/Mature/Harvest Ready)
- Analytics Dashboard - Track analysis history with statistics (total analyses, harvest-ready count, immature count, average confidence)
- Data Persistence - All user data stored in Supabase PostgreSQL
- Environment Recommendations - Temperature & humidity guidelines by growth stage
- Responsive Design - Works seamlessly on desktop, tablet, and mobile devices
- Dark Theme UI - Eye-friendly interface with green accents
mushroom-prediction/
- backend/ - Flask REST API
- app.py, config.py, extensions.py
- routes/ - auth_routes.py, predict_routes.py
- services/ - supabase_service.py, ml_service.py, cloudinary_service.py
- utils/ - helper.py
- uploads/ - temporary file storage
- frontend/ - React + Vite SPA
- src/
- App.jsx, main.jsx
- pages/ - LandingPage.jsx, LoginPage.jsx, Dashboard.jsx, EnvironmentRecommendation.jsx
- services/ - api.js
- package.json, vite.config.js, index.html
- src/
- ml_model/ - PyTorch ML Model
- main.py, data_split.py
- models/ - trained model files
Prerequisites:
- Python 3.8+ (for backend)
- Node.js 16+ (for frontend)
- Git
Backend Setup:
- Navigate to backend directory
- Create and activate virtual environment
- Install dependencies (pip install -r requirements.txt)
- Configure environment variables in .env file
- Run backend server (python app.py)
- Server runs on http://localhost:5000
Frontend Setup:
- Navigate to frontend directory
- Install dependencies (npm install)
- Run development server (npm run dev)
- App opens at http://localhost:5173
Backend requires:
- SUPABASE_URL - Supabase project URL
- SUPABASE_KEY - Supabase API key
- CLOUDINARY_CLOUD_NAME - Cloudinary cloud name
- CLOUDINARY_API_KEY - Cloudinary API key
- CLOUDINARY_API_SECRET - Cloudinary API secret