What if AI could help us spend less time staring at screens and more time discovering the world around us?
That question inspired me to come up with WildLens, an open-source, AI-powered nature companion designed to make exploring the outdoors more fun, educational, and accessible.
Instead of using AI to keep people glued to their phones, I want to build something that encourages them to put their phones down, step outside, and discover the little things they might otherwise overlook. π±
What I Built
WildLens is an AI-powered nature exploration companion that helps people identify and learn about the natural world around them.
Imagine walking through a park, hearing an unfamiliar bird call, or discovering a plant you've never seen before. Instead of spending several minutes searching the internet, WildLens helps you identify what you've found and learn something interesting about it.
Here's what I plan to build:
- π¦ Bird Identification: Capture a bird's photograph or record its call to get a likely identification and learn about its characteristics.
- πΏ Plant and Tree Recognition: Use an image to identify plants and trees, along with useful information about their habitat and features.
- π Insect Discovery: Explore the smaller inhabitants of your surroundings and learn about their role in the ecosystem.
- π§ Nature Facts: Get concise, easy-to-understand explanations about the species you encounter.
- π― Nature Challenges: Complete small outdoor missions, such as spotting three different leaves, observing a bird without disturbing it, or finding different flower shapes.
- π± Offline Exploration: Make previously downloaded species information and supported identification features available without an internet connection.
WildLens is intended for nature enthusiasts, students, families, hikers, birdwatchers, and anyone who wants to reconnect with the world outside their screens.
The goal is simple: the phone helps you discover something, but the real experience happens outdoors.
Demo
The project is currently in the building/planning stage, and I plan to share a working demo as the implementation progresses.
The intended demo will show the complete experience:
- Open WildLens and select a discovery mode.
- Photograph a plant or record a bird call.
- Get a predicted identification and relevant nature facts.
- Save the discovery to a personal nature journal.
- Receive a small outdoor challenge and continue exploring.
I'd also love to take WildLens outside and test it in a local park, documenting how it performs with real-world observations.
Demo link: To be added when the first working version is available.
Code
WildLens is intended to be an open-source project, with the code, setup instructions, model information, and contribution guidelines published on GitHub.
I want the project to be something other developers can experiment with, improve, and extendβnot just another application that hides its AI implementation behind an API.
How I Built It
My approach is to build WildLens around open-source tools and open-weight AI models rather than making a closed, hosted AI API the core of the application.
Here's the planned architecture.
1. Open-weight AI for nature identification
For visual recognition, I'll explore an open-weight vision model that can identify likely plant, bird, or insect species from photographs. Depending on its performance and hardware requirements, I'll evaluate models such as a suitable vision-language model or a specialized image classifier.
For bird calls, I'll investigate a lightweight audio-classification model trained for bird-sound recognition.
These are separate ML tasks, so I'll select models suited to each rather than expecting one general-purpose language model to solve everything.
2. Local inference with Ollama
I'll explore Ollama for running a compatible open-weight language model locally.
The language model can turn identification results into useful, readable explanations, generate nature challenges, and answer questions about a discovery using trusted species information.
For example, after identifying a bird, WildLens could explain its typical habitat, diet, and interesting behavior in simple language.
The identification system and language model will have separate responsibilities. The language model should not invent a species identification when the vision or audio model is uncertain.
3. A practical technology stack
The initial implementation will use the following tools:
- Frontend: React and Tailwind CSS for a responsive, mobile-friendly interface.
- Backend: Python and FastAPI for model orchestration and application logic.
- Vision AI: An appropriate open-weight vision model or lightweight image classifier.
- Audio AI: An open-source bird-call classification model.
- Local language model: Ollama with a compatible open-weight model for explanations and challenge generation.
- Storage: SQLite for local discovery history and saved observations.
- Nature knowledge: A curated species database, with appropriate open datasets and attribution.
I'll begin with image-based identification and the nature journal, then add audio recognition and improve offline functionality.
4. Designing for offline exploration
Offline support is one of the most important parts of WildLens.
My plan is to cache species information, save discoveries locally, and make supported models available on the device before users head outside.
A fully offline experience will depend on the selected model, device memory, and storage capacity. Rather than promising that every feature will work offline immediately, I'll build and test offline support feature by feature.
The ideal experience is to prepare before a walk and then explore without needing a constant internet connection.
5. Keeping the experience outdoors-first
I don't want WildLens to become an endless AI chat interface.
The application will prioritize quick identification results, short explanations, saved observations, and outdoor challenges. Once users have what they need, the interface should encourage them to put the phone away and continue observing their surroundings.
I'll also prioritize responsible wildlife observation: users should maintain a safe distance from animals, avoid disturbing habitats, and treat uncertain model predictions as suggestions rather than definitive scientific identifications.
Why Does Open Innovation Matter?
For WildLens, open innovation isn't just a technical preference. It's what makes the project's approach possible.
π Freedom to experiment
Using open-weight models gives me the flexibility to evaluate different vision, audio, and language models, compare their performance, and replace individual components without redesigning the entire application.
If a lightweight bird classifier works better for bird calls than a general-purpose model, I can use it.
π Privacy through local inference
Nature photographs and recordings can contain more information than users intend to share. Running supported inference locally can reduce the need to upload those observations to an external service.
My goal is to keep personal discovery history on the user's device and make external services optional wherever practical.
π Access beyond a constant internet connection
A hosted AI API makes an application dependent on network availability, service policies, and API costs.
Local models can help WildLens support exploration in parks, gardens, and trails where connectivity is unreliable. Once the required models and reference data are available locally, supported features can work without contacting a remote inference service.
π οΈ A project the community can improve
Open-source development means other contributors can improve model integration, add regional species information, optimize inference, support more languages, and build additional exploration features.
For example, someone could contribute a better bird-call classifier or a curated database of plants found in their region.
π A different relationship with AI
Many AI applications compete for more screen time. WildLens is designed around the opposite idea.
AI should help people become more curious about the real world, not replace their experience of it.
That's where I believe open innovation can make a meaningful difference: giving developers the freedom to build technology that is useful, privacy-conscious, adaptable, and accessible.
My Agent Session
I'll share an agent session or development walkthrough once I have a meaningful implementation to demonstrate.
I'd like to document the process of integrating the open-weight models, handling uncertain predictions, and making offline inference practical.
Prize Categories
WildLens is being developed for the Touch Grass theme, with open-source AI at the center of the project.
I'll confirm the applicable partner prize categories against the challenge rules once the final model and tooling choices are established.
What's Next?
My next milestones are:
- [ ] Set up the repository and initial application structure.
- [ ] Integrate an open-weight vision model for image-based nature identification.
- [ ] Build the species information and nature journal features.
- [ ] Add locally generated explanations and outdoor challenges.
- [ ] Investigate and integrate bird-call recognition.
- [ ] Test offline inference on supported hardware.
- [ ] Take WildLens outdoors and document the results.
I'm excited to build this, learn from the open-source AI ecosystem, and hopefully help more people notice the amazing things happening just outside their doors.
Let's build AI that helps us touch grass. πΏ
#Hacktoberfest #OpenSource #AI #MachineLearning #TouchGrass #Ollama #BuildInPublic
Top comments (0)