# Plant Your Planet | geospatial & temporal analytical guide

> Source: <https://dev.to/rajan_patel_544aa43c80bfe/plant-your-planet-geospatial-temporal-analytical-guide-4ao6>
> Published: 2026-10-12 06:27:06+00:00

**Submission for the Hacktoberfest Open-Source AI Challenge Week 1: Touch Grass**

Built in collaboration with [@dkb73](https://dev.to/dkb73)

**PlantMyPlanet** is an open-source, hyper-local garden planning application that starts with the ground under your feet instead of relying on a generic plant catalog.

When a user drops a pin on the map, the application fetches real-time soil composition and climate parameters for those exact coordinates, matches them against $2,568$ crops in the FAO EcoCrop dataset, and generates a stage-by-stage outdoor care checklist accompanied by an AI chat advisor tied directly to that specific planting instance.

Working alongside [@dkb73](https://dev.to/dkb73), my primary responsibilities centered around the **FastAPI backend architecture, weather API integration, frontend user interface, and the LLM chat advisor system**:

**FastAPI Backend Architecture:** Designed and built the asynchronous FastAPI endpoints that coordinate requests, manage planting sessions, and handle data flow between the user interface, database, and external services.

**Weather API Integration:** Built the integration with **Open-Meteo** and **NASA POWER** to pull live climate metrics, elevation, solar radiation, and $16$-day local weather forecasts dynamically based on user-selected coordinates.

**Frontend UI & Interactive Experience:** Created the responsive user interface (HTML/JS) allowing users to drop a location pin, view suitabilities across crops, select planting scales, and track their garden progress stage-by-stage.

**Contextual LLM Chat Advisor:** Developed the interactive chat system powered by open-weight models (**Google Gemma** via OpenRouter). The prompt dynamically injects the specific planting context—crop type, days in the ground, current growth stage, pending tasks, and recent garden field notes—to deliver grounded, actionable advice.

**Backend:** Python, FastAPI, Asyncio

**Frontend:** HTML5, CSS3, JavaScript

**Weather & Climate APIs:** Open-Meteo API, NASA POWER API

**AI Chat & Models:** Google Gemma (`google/gemma-4-31b-it:free`, `google/gemma-4-26b-a4b-it:free`), NVIDIA Nemotron, Liquid LFM via OpenRouter

**Database:** PostgreSQL 16 (FAO EcoCrop catalog)

**GitHub Repository:** [github.com/dkb73/plantTheplanet](https://github.com/dkb73/plantTheplanet)

**Collaborator Submission Post:** Check out [Dhwanan's Post](https://dev.to/dkb73) for full project architecture breakdown and additional screenshots.

```
docker compose up -d
python db/ingest_ecocrop.py
uvicorn app.main:app --host 0.0.0.0 --port 8000 --reload
```

By combining transparent, public weather and environmental data with swappable open-weight models like **Google Gemma**, PlantMyPlanet provides grounded advice without hiding its reasoning inside a closed model. If an API key is omitted, the app gracefully falls back to a deterministic agronomic timeline—ensuring that real-world gardeners always have actionable guidance.
