What it does
FindMyBird is a location-based bird directory that allows you to see birds that have been spotted near you using real eBird data. It allows you to use either your current location or somewhere else in Ontario, adjust your desired radius, and displays an interactive map with trending areas for bird watching. The users are able to see all sightings in the last 7 days for their area. Upon interest in any bird in their area, users are able to click on the bird and it opens a modal with taxonomic information about the bird, as well as images.
How we built it
Built with Next.js 14, TypeScript, and Tailwind CSS. Integrated eBird API for real-time bird observations, Leaflet.js for interactive mapping, and Wikipedia/Macaulay Library APIs for photos. Implemented geolocation, caching, and multi-source photo fetching with fallbacks to maximize coverage. The UI is responsive with real-time updates and error handling.
Challenges we ran into
One of our biggest challenges was initially doubting whether our idea was strong. We spent time questioning whether to pivot but ultimately realized that a well-executed, user-focused product can be just as impactful as a technically complex one. Once we committed the challenge shifted to scoping the project realistically. With access to large amounts of data from eBird, it was tempting to overbuild, so we had to be intentional about focusing on a strong MVP. Integrating multiple API’s, keeping the backend clean, and shaping the data for a meaningful frontend experience also required careful iteration. Finally, working under time pressure meant debugging quickly and prioritizing features that delivered the most value by the deadline.
Accomplishments that we're proud of
We are most proud of our ability to integrate the eBird API into our project, transforming endpoints for recent observations and hotspots into a cohesive and user-friendly experience. The app is able to dynamically fetch and filter data based on location, selected radius and time frame. It then synchronizes the data into an interactive map and list view. The app is able to handle any API or missing data errors by providing safe fallbacks and clear loading or empty states instead of breaking the UI. We included intelligent photo-caching with multiple source fallbacks. Overall, FindMyBird is a project that delivers real world practical value to users.
What we learned
Working on this project, we learned how to take an idea from concept to completion, by iterating quickly and focusing on delivering a polished experience with a limited timeframe. Throughout the process, we learned the importance of teamwork, clear communication and staying committed to the project. By supporting each other and dividing responsibilities effectively, we were able to push through challenges and ship a complete, well-thought out project.
What's next for FindMyBird
A gamified system that engages users with competitions and rewards for finding and uploading photos of birds they find. A mobile app, making it more accessible for users to quickly find the birds in their area. A Machine Learning model or API which can predict where birds will be in the future.
Log in or sign up for Devpost to join the conversation.