Inspiration
RaptorID was inspired by my love of nature and my frustration with how inaccessible bird identification apps often are for beginners, children, or those with learning differences. Many people want to connect with the natural world but are put off by complex interfaces or the assumption that users already know bird names. I wanted to build a solution that felt intuitive, inclusive, and empowering — especially for people who don’t consider themselves “techy.”
What it does
RaptorID allows users to identify UK birds of prey by uploading a photo or simply describing what they saw. The app uses Azure’s Vision API to analyze images and OpenAI to generate accurate identifications and explanations. It supports voice input, geolocation-based autofill, and even reads results aloud for accessibility. Users can also save sightings to a personal journal.
How we built it
I first built this app in vanilla HTML/CSS/JavaScript as a personal project. For this hackathon, I rebuilt it using React to stretch my skills and practice modern development patterns.
- Frontend: React, hosted on Netlify
- Backend: Node.js/Express, hosted on Render
- AI: Azure Vision API + OpenAI API
- Extras: Voice input, speech synthesis, geolocation autofill (OpenStreetMap)
Everything is fully deployed, tested across multiple devices, and connected with secure API keys managed via environment variables.
Challenges we ran into
- Migrating complex vanilla JS logic into React components while maintaining accessibility
- Setting up secure, full-stack deployment across Netlify and Render
- Troubleshooting CORS issues between frontend/backend platforms
- Making voice input, read-aloud, and location fetching work reliably across different browsers and devices ## Accomplishments that we're proud of
- Building a fully working, deployed, AI-powered app as a self-taught developer
- Creating a UX that is intuitive, clean, and accessibility-first
- Implementing voice and location features in a way that feels natural
- Solving a real-world problem in a way that feels playful and meaningful
What we learned
- How to use React Router and React hooks for dynamic user experiences
- How to manage authentication flows with JWT and basic auth
- How to integrate external APIs and handle async logic in React
- How to approach UX with empathy and clarity
- How to deploy full-stack apps and manage environment secrets securely ## What's next for Raptor ID
- Add bird sound analysis using audio files for multi-sensory identification
- Expand to other bird categories or regional species
- Allow journal export/download or syncing to a cloud account
- Further optimize for offline use or low-connectivity environments
- Build a community feature so users can share sightings
Test log in details Username: admin@email.com Password: Byker1738
Log in or sign up for Devpost to join the conversation.