MANFO · Team project
Scene2Seen
Disaster reporting, across languages.
A disaster-reporting app that turns photo, voice, and text reports into mapped incidents for response teams.
- Contribution
- AI architecture & mobile development
- Status
- Available on the App Store
- Built with
- React Native · TypeScript · Firebase · Gemini · Whisper
The project
Scene2Seen is the mobile app from our MANFO disaster-reporting project. It connects reports from citizens with a shared view for response teams, across a native app, Telegram, and LINE.
People can send a photo, record a voice message, or type a report. Image analysis and transcription turn those inputs into structured incident records. AI-assisted language support lets people write reports and use the app in their preferred language.
My contribution
I designed the AI API architecture and built the AI reporting pipeline. My work connected the reporting interface to the models that interpret incoming reports.
- Built the main reporting screen in the mobile app.
- Implemented the incident-list dashboard so users can see which emergency events are happening.
- Implemented the application’s dark mode.
- Built AI-assisted multilingual support: user-entered text is sent to an LLM with system prompts, allowing reporting and the app interface to work in the user’s preferred language.
Screenshots
From a report to a response
The app combines a live incident map with report details, severity markers, and location-based filtering. Emergency contacts and a shelter finder sit alongside the reporting flow.
For responders, a dedicated dashboard organizes incidents by severity and proximity and allows cases to be marked as resolved.
Engineering behind it
- React Native and Expo for the mobile app, with TypeScript across the client.
- Firebase Auth, Firestore, and Storage for identity, incident data, and uploaded media; Node.js and Express for backend services.
- Gemini for image analysis and Whisper for voice transcription, with defensive parsing of model responses.
- A shared incident data model and conversation state machines to connect the mobile app, Telegram bot, and LINE bot.
- Role-based access for response workflows, with Google Maps for the incident view and Cloud Run for services.
What I learned
This project made the relationship between data design and interface behavior concrete: reports from several channels still need to become the same kind of incident record.
Working with model-generated output also meant planning for incomplete or unexpected responses, rather than assuming every request would produce usable structured data.
Current status
The iOS app is available on the App Store under the name Scene2Seen. The screenshots above show the published app.




