This is a submission for the Hacktoberfest Open-Source AI Challenge Week 1: Touch Grass
What I Built
Most outdoor and recreation apps encourage users to spend more time looking at screens—reading trail reviews, comparing weather data, and navigating cluttered GPS interfaces before taking a single step outside.
I built TerraPulse around a simple design philosophy: the screen should be the shortest part of the experience—ideally under 30 seconds.
TerraPulse is an AI-powered field guide for hikers, trail runners, foragers, and gardeners. Instead of studying charts, users can:
- Select an outdoor mission: Hiking, Trail Run, Foraging, or Gardening.
- Explore environmental inputs such as temperature, humidity, soil moisture, elevation, canopy density, and recent rainfall.
- Get a composite Grass Score (0–100), an assessment of trail traction and frost risk, and a concise spoken field briefing.
- Receive a physical nature micro-quest—for example, observing different fungi growing on shaded tree trunks.
- Listen to the briefing, put the phone away, and focus on the outdoors.
The goal is simple: make environmental information useful without keeping people glued to their screens.
Demo
- 🌐 Live Application: TerraPulse on Render
- 📖 Interactive API Documentation: Explore the API
- 💻 Source Code: GitHub Repository
Try the live demo by selecting an available trail preset, such as Pine Ridge Trail or Alpine Ridge, then using Synthesize Briefing & Touch Grass if that option is available. Listen to the briefing and explore the generated outdoor guidance.
How I Built It
TerraPulse combines environmental data analysis, an AI-guided outdoor experience, audio narration, and observability.
1. Environmental Analysis with TabPFN
Trail conditions can depend on multiple interacting variables, including temperature, humidity, soil saturation, and time since rainfall.
I integrated Prior Labs' TabPFN (tabpfn.TabPFNClassifier) to analyze tabular environmental observations.
- Historical observations are stored in
data/trail_microclimate.csv. - The analysis supports trail-condition assessments such as dry, muddy or slippery, and frost or ice risk.
- The resulting predictions provide structured input for the outdoor briefing.
2. Outdoor Reasoning with Google Gemma 2
Environmental predictions become more useful when translated into practical, understandable guidance.
TerraPulse integrates Google's open-weight Gemma 2 (gemma-2-9b-it) as its naturalist-style reasoning agent.
- It turns environmental analysis into a concise field briefing.
- It can generate a nature micro-quest and a sensory observation prompt.
- The project supports configurable inference paths, including local Ollama integration (
USE_LOCAL_GEMMA=true), Google AI Studio endpoints, and deterministic fallback behavior.
Actual model availability and inference requirements depend on the selected runtime and configuration.
3. Screen-Free Audio with ElevenLabs
TerraPulse supports ElevenLabs Turbo v2.5 for spoken narration, helping users listen rather than continually check their screens.
When the required voice API configuration is unavailable, the frontend can use the browser's native Web Speech API (window.speechSynthesis) as a fallback.
4. Observability with Sentry
The project uses sentry-sdk to instrument parts of the agent pipeline with custom spans, including:
ai.tabpfn.tabularai.gemma.llmai.elevenlabs.tts
The interface includes an agent-tracing and latency-waterfall view intended to make the processing pipeline easier to inspect.
5. Deployment with Docker and Render
TerraPulse includes a Dockerfile and a render.yaml configuration for deployment on Render.
The live deployment makes it possible to explore the application through a browser without setting up the project locally.
Why Open Innovation Matters
Outdoor environments often have unreliable connectivity. A useful field tool should be designed with those constraints in mind.
Open-weight models and flexible deployment options offer several potential benefits:
- Local inference options: Models such as Gemma 2 can be run locally when the required hardware and software are available.
- More control over data: Local processing can reduce the need to send certain inputs to external services, depending on the configuration.
- Flexible experimentation: Open-weight models and open-source tooling make it easier for developers to inspect, adapt, and extend a system.
- Practical fallback behavior: Deterministic fallbacks and browser-based speech can help the experience remain useful when optional integrations are unavailable.
TerraPulse explores how these approaches can support a more focused, screen-conscious outdoor experience. Cloud-backed features still depend on connectivity, credentials, and service availability.
My Agent Development Workflow
TerraPulse was developed with AI-assisted pair programming and an emphasis on making the system easier to inspect.
- Agent tracing and performance spans can be explored through the application's tracing interface, where available.
- The source repository contains the implementation and project history.
- The modular architecture separates environmental analysis, reasoning, voice generation, and observability.
Prize Categories
TerraPulse is intended for consideration in the following challenge and sponsor categories, subject to each category's official eligibility requirements.
Featured Categories
- Best Use of Render: The application is deployed on Render, with deployment configuration included in the repository.
- Best Use of TabPFN: TabPFN is integrated for tabular environmental analysis and trail-condition assessment.
- Best Use of Gemma: Gemma 2 is integrated into the outdoor reasoning workflow to help turn structured information into field guidance.
Partner Categories
- Best Use of ElevenLabs: ElevenLabs integration supports spoken outdoor briefings.
- Best Use of Sentry Agent Tracing: Sentry instrumentation supports inspection of the agent pipeline and its performance.
Links
- Live Application: https://terrapulse-wlci.onrender.com
- API Documentation: https://terrapulse-wlci.onrender.com/docs
- GitHub Repository: https://github.com/ritikahirwar8168-dev/terrapulse
Less screen time. More time outdoors. Go touch grass! 🌿
Top comments (2)
great build!
nice work