Plant Identifier is an AI-powered web application that identifies plants from images using LLMA 3.2 model. It provides users with plant identification and care tips, perfect for gardening enthusiasts and professionals.
Check out our video demonstration to see Plant Identifier in action:
Click on the image above to watch the video on Facebook.
- Account registration
- Secure login
- Plant identification with a photo
- Account management (including account deletion, edit password, edit profile)
Try the live demo at plantaitl.online
Getting Started:
- Visit the site.
- Register and verify your email.
- Log in to begin identifying plants.
- Image Upload: AI-based identification from plant images.
- Plant Details: View detailed information and care tips.
- User Authentication: OTP email verification for secure login.
- Responsive Design: Accessible on desktop and mobile.
- Profile Management: Save and manage your plant collection.
- Sign Up: Register with OTP email verification.
- Upload Image: Upload or capture an image of a plant.
- AI Processing: Image analyzed via TOGETHER API (Llama 3.2 model).
- Identification: Get plant information and care tips.
- Save Plants: Manage identified plants in your profile.
- Frontend: Next.js, React, TypeScript, Tailwind CSS
- Backend: Node.js, PostgreSQL
- Authentication: JWT, OTP via email
- API: TOGETHER API (Llama 3.2 model)
- Deployment: Vercel
-
Clone the repository:
git clone https://github.com/ajitonelsonn/plant-identifier.git cd plant-identifier
-
Install dependencies:
npm install
-
Set environment variables:
Create a
.env.local
file from.env.local_copy
. Click this for more about .env.local -
Set up the database:
Run
database_setup.sql
to initialize PostgreSQL. -
Build and run:
npm run build npm start
-
Visit
http://localhost:3000
in your browser.
/api/check-auth
: Verify user authentication./api/check-availability
: Check username/email availability./api/generate-care-tips
: Generate plant care tips./api/identify-plant
: Identify plants./api/register
: User registration and OTP verification./api/profile
: Manage user profiles./api/forgot-password
: Password reset requests./api/reset-password
: Reset passwords./api/change-password
: Change passwords./api/login
: User login./api/logout
: User logout./api/send-otp
: Send OTP for verification./api/plant-identifications
: Manage identified plants.
- Plant Identifier - System Architecture Diagram: View here.
- Plant Identifier - Flow Chart: View here.
- Plant Identifier Database: View here.
This project is licensed under the MIT License. See the LICENSE file for details.