Inspiration
Recently, I went on a camping trip to Silverwood Lake SRA and was instantly struck by two things: the breathtaking beauty and the lack of cell service. I realized that while the parks provide maps and safety warnings like toxic algae warnings, rattlesnake sightings, or "leave no trace" reminders they are often locked behind a QR code or a physical board at the trailhead that you can't access once you're miles into the backcountry. I wanted to build a "Park Ranger in your pocket" that stays with you at all times.
What it does
PetrParker is an AI-powered park ranger that keeps hikers safe and informed. Using geofencing, the app tracks your progress through California State Parks, sending proactive notifications:
Safety First: Alerts for dangerous flora, fauna, or water conditions (like toxic algae).
Eco-Stewardship: Context-aware behavioral tips (e.g., "Don't pick up the seashells here!").
Discovery: Real-time highlights of rare wildlife or glowing bioluminescence nearby.
AI Vision: A chatbot that lets users upload photos of plants or animals to ask, "Is this what the alert was talking about?" even while in the park.
How we built it
We built a robust serverless pipeline focused on geospatial intelligence:
The Brain: We built a Knowledge Base using AWS Bedrock, fueled by a custom-scraped dataset of official California State Park regulations and ecological data.
The Trigger: We used Amazon Location Service to manage complex park boundary datasets. We linked a Tracker to an EventBridge rule that detects when a user's coordinates enter a specific geofence.
The Pipeline: EventBridge triggers an AWS Lambda, which queries our Bedrock Knowledge Base for location-specific safety tips and serves them via AWS SNS notifications.
The App: A React Native and Expo frontend built with AWS Amplify Gen 2, utilizing Amplify's offline-first capabilities to ensure that park facts and trail data remain accessible when data roaming is non-existent.
Challenges we ran into
Our largest problem collectively was the AWS learning curve, having little previous experience. Still, charged headfirst and used as many AWS services as we could.
Scraping to get the California State Park information was easy, but converting that data into a vectorized knowledge base was challenging. Our AI-Ranger struggles to retrieve meaningful information from the knowledge base currently.
We also ran into issues with offline-support and storing park information locally on mobile devices.
Accomplishments that we're proud of
We are incredibly proud of the Geofence-to-AI pipeline. Seeing a coordinate update on a phone successfully trigger a specific, AI-generated safety tip about a specific plant in a specific California park felt like magic.
What we learned
We learned the intricacies of RAG (Retrieval-Augmented Generation) and gained deep experience with AWS Location Services, Amplify, and Bedrock.
What's next for PeterParker
Fully Offline LLMs: Exploring the use of compressed models that can run on-device for basic safety chat when 0% connectivity is available.
AR Trail Marking: Using Augmented Reality to overlay trail paths and "cool sights" directly onto the camera view. Display more precise warnings as users travel throughout the park.
Expansion: Moving beyond California State Parks to National Parks and local parks. Coming to a park near you!
Built With
- amazonlocationservice
- amplify
- bedrock
- cloudwatch
- eventbridge
- expo.io
- lambda
- react-native
- typescript
Log in or sign up for Devpost to join the conversation.