DEV Community

week 1 dev challenge

Hacktoberfest Open-Source AI Challenge Week 1: Touch Grass Submission 🌿

🌱 Touch Grass β€” AI-Powered Plant Companion

This is a submission for the Hacktoberfest Open-Source AI Challenge Week 1: Touch Grass

What I Built

Touch Grass is an AI-powered plant companion designed to encourage people to step away from their screens and spend more time outdoors.

The idea is simple: instead of endlessly scrolling about nature, go outside, take a photo of a plant, and let AI help you understand it. 🌱

Users can upload a photo of a plant, and the application uses an open-weight Gemma 3 4B model to analyze it and provide information such as:

  • 🌿 Plant identification
  • πŸ”¬ Botanical/scientific name
  • ❀️ Plant health status
  • 🦠 Possible diseases or visible symptoms
  • πŸ’‘ Possible causes
  • 🌱 Actionable plant-care recommendations
  • 🌎 Environmental observations

The project is designed for students, beginners, plant lovers, and anyone who wants a small reason to step outside and interact with the world around them.

The goal isn't just to build another AI application.

The goal is to use AI as a reason to leave the screen.

Demo

πŸŽ₯ Video Demo

A short demonstration shows the complete flow:

Take a plant photo β†’ Upload it β†’ AI analyzes it β†’ Learn about the plant β†’ Go outside and explore more.

Code

GitHub Repository

https://github.com/deepthisri3/plantcare-ai

The complete source code for the frontend and backend is available in the repository.

How I Built It

The project is built using a modern full-stack architecture:

  • Frontend: React.js + Vite
  • Backend: FastAPI + Python
  • AI Model: Gemma 3 4B
  • AI Runtime: Ollama
  • Image Processing: Pillow
  • Communication: REST API
  • Configuration: Environment variables

πŸ€– Local AI with Gemma

One of the main goals of this project was to use an open-weight AI model locally instead of relying on a closed, hosted AI API.

The application uses:

React Frontend
      ↓
FastAPI Backend
      ↓
Ollama
      ↓
Gemma 3 4B
      ↓
Plant Image Analysis
      ↓
Structured Plant Information
Enter fullscreen mode Exit fullscreen mode

When a user uploads an image, the backend prepares the image and sends it to the locally running Gemma model through Ollama.

The model is prompted to analyze the plant and return structured information about the plant's identity, health, symptoms, possible causes, care recommendations, and environmental observations.

The repository includes the configuration required to run the application locally through Ollama.

No external Gemini/Gemma API key is required for the local AI inference.

Why Does Open Innovation Matter?

Open innovation made this project possible in a way that a closed API alone would not.

Using an open-weight model such as Gemma through Ollama gives developers the ability to experiment with AI locally, understand how the AI component fits into the application, and build without depending entirely on a proprietary hosted API.

For this project, local inference provides several advantages:

  • πŸ”“ More control over the AI model and inference environment
  • πŸ§ͺ Easier experimentation with prompts and AI behavior
  • πŸ’» The ability to run the AI locally
  • πŸ” Images can be processed locally instead of automatically sending them to a third-party cloud AI service
  • πŸ’° No dependency on a paid external AI API for the core analysis
  • 🌱 A more accessible way for developers to experiment with multimodal open-weight AI

Open-source and open-weight AI make it possible to take an idea from "I want to build something with AI" to an actual working application that developers can understand, modify, and extend.

My Agent Session

Prize Categories

Final Thoughts

I built Touch Grass around a simple idea:

AI shouldn't always keep us in front of a screen. Sometimes, it should help us get outside. 🌱

Instead of using AI to generate another piece of content to consume, Touch Grass uses AI as a bridge between the digital world and the physical world.

Take a photo.

Go outside.

Touch grass. 🌿

Top comments (0)