- Parks and trails typically lack up-to-date notification systems, leaving people unaware of the presence of dangerous animals. With the current infrastructure, park rangers can only communicate with each other, resulting in trail users’ significant dependence on the presence of park rangers to get up-to-date information.
- Especially with more threatening animals like bears, there typically isn’t a very big population in an area because their ranges or territories are large. Thus, a sighting of a bear could mean that users are relatively safer elsewhere.
- We want to help users to feel informed, updated, and safe while exploring new trails. Thus, an animal sighting nearby, or a lack thereof, could help people make a better-informed decision about whether or not to walk a trail.
What it does
- Bear in Mind allows users to report sightings of animals to help warn others nearby. Each sighting entry includes essential information such as the type of animal and the location at which it was last spotted.
- To communicate nearby sightings to users, a list (sorted by distance) is available to users, where they can easily view nearby animals and the distances at which they are located from you. Our app allows users to add multiple locations where they frequently hike. From this list, nearby reported sightings can be viewed.
How we built it
After making an initial mockup on Figma, we used JS, ReactNative, and Expo to build and test our app.
Challenges we ran into
- We learned how to use React Native from scratch. Seeing as how no one in our group was familiar with this framework, we spent a lot of time setting everything up, especially prerequisite downloads such as Node.js.
- It was extremely difficult to work synchronously because we had trouble installing a phone emulator, which we were planning on live streaming in a call to be able to test and refresh our app’s UI live. In the end, we resorted to streaming one of our members’ phone screens to our meeting.
Accomplishments that we're proud of
- We managed to build a working application despite having no prior experience with React Native
- We were especially proud of our app’s navigation through different pages, which was tricky to figure out but extremely useful.
- We were able to use the API and tutorials effectively, such that debugging was not as much of a chore as it normally was. We were also able to discover and use many features of React Native solely through reading the documentation.
- The UI mockup design of what we are hoping to be our completed app (done through Figma)
What we learned
- We were able to learn the basics of React Native, such as using buttons and form elements.
- We also learned about the capabilities of React Native and a lot about its API.
- We learned the importance of planning ahead and potentially having software such as Node.js installed ahead of time, which would have saved considerable amounts of time.
- We learned how to make a mobile app!
What's next for Bear in Mind
- Though React Native allows apps to be used on both Android and iOS, this app was tested on an Android device and might not fully work on iOS. It will be a top priority to fully test on and support iOS in the future.
- Add more features that were envisioned but that we didn’t have enough time during the hackathon to add:
- Scroll around a map to choose a location
- View bear sightings on a map
- Store information on a server (ex. Flask) so everyone can access it
- Address potential issue of false reports -Photo verification
- Train decision-making model that can decide if a report by any given user is likely to be false Create incentives/reward programs to use the app and make verified reports