The idea
We spend a lot of time looking at screens, even when there are interesting things to discover outside. I wanted to build something that encourages people to take a break from their screens and explore the natural world.
That's why I built NatureQuest AI, an AI-powered outdoor adventure companion that generates personalized nature quests based on a user's activity, available time, and difficulty level.
This project is my contribution to the Hacktoberfest 2026 Open-Source AI Challenge — Week 1: Touch Grass.
What can NatureQuest AI do?
Users can choose activities such as:
🚶 Walking
🚲 Cycling
🌱 Gardening
🐦 Birdwatching
🔎 Nature observation
The application generates a short outdoor quest with instructions, a time limit, a difficulty level, and a reflection prompt. Users can then go outside, complete the quest, and record their experience.
The goal is simple: make the screen the starting point for an outdoor experience, not the destination.
How I built it
The project uses the following technologies:
React + Vite: Frontend interface
Tailwind CSS: Styling
Node.js + Express: Backend API
Ollama: Local model runtime
Gemma 2 2B: Open-weight language model
Browser local storage: Saving quest history locally
Why local AI?
I initially explored hosted inference through Hugging Face Inference Providers, but I ran out of available inference credits.
Instead of stopping there, I switched to running Gemma locally through Ollama.
This gave the project several advantages:
Quest generation does not require paid Hugging Face inference credits.
Once the model is downloaded, generation can work without an internet connection.
User prompts can be processed locally rather than sent to a hosted inference service.
I can experiment with the model and change the AI integration as the project evolves.
Local inference still requires a capable device, sufficient memory, and Ollama running. The initial model download also requires an internet connection.
How it works
A user chooses an outdoor activity and preferences.
The React frontend sends the request to the Express backend.
The backend sends the prompt to the locally running Gemma model through Ollama.
Gemma generates a structured nature quest.
The application displays the quest so the user can head outside and complete it.
Screenshots and demo
Homepage
AI-generated quest
Local model running
What I learned
This project helped me understand how to connect an open-weight language model to a full-stack web application.
I also learned that AI integration isn't only about sending a prompt. The application needs structured responses, validation, error handling, and a fallback experience when generation fails.
Most importantly, I learned that switching from a hosted model API to local inference can make a project more independent of external inference credits.
What's next?
I'd like to improve NatureQuest AI with better outdoor activity recommendations, richer quest history, and additional ways to document discoveries while keeping the experience focused on spending time outside.
Try the project
GitHub repository: [https://github.com/ShubhamHagawane/NatureQuest-AI]
If you try NatureQuest AI, I'd love to hear which outdoor quest you completed!



Top comments (0)