Swift Student Challenge 2026
Distinguished Winner
Swift Student Challenge 2026
Distinguished Winner
Swift Student Challenge 2026
Distinguished Winner

Asuo

Navigating Floods. Saving Lives.

Project Overview

Project Overview

Project Overview

What is Asuo? Asuo is an offline flood safety navigation app that delivers real-time flood warnings and guides people to safety. Built for Accra, Ghana, and designed to scale to the 1.6 billion people living in flood-prone communities worldwide.

User problem: Flooding in cities like Accra causes lives to be lost because people have no reliable way to navigate danger zones or find safety quickly, especially when connectivity is unavailable.

My role: Product and interaction design, research, concept, prototyping.

What I designed: The navigation system, alert dashboard, flood map interface, offline functionality, and SOS emergency feature.

Outcome or validation: Prototype built and refined through user feedback and research insights.

What is Asuo? Asuo is an offline flood safety navigation app that delivers real-time flood warnings and guides people to safety. Built for Accra, Ghana, and designed to scale to the 1.6 billion people living in flood-prone communities worldwide.

User problem: Flooding in cities like Accra causes lives to be lost because people have no reliable way to navigate danger zones or find safety quickly, especially when connectivity is unavailable.

My role: Product and interaction design, research, concept, prototyping.

What I designed: The navigation system, alert dashboard, flood map interface, offline functionality, and SOS emergency feature.

Outcome or validation: Prototype built and refined through user feedback and research insights.

What is Asuo? Asuo is an offline flood safety navigation app that delivers real-time flood warnings and guides people to safety. Built for Accra, Ghana, and designed to scale to the 1.6 billion people living in flood-prone communities worldwide.

User problem: Flooding in cities like Accra causes lives to be lost because people have no reliable way to navigate danger zones or find safety quickly, especially when connectivity is unavailable.

My role: Product and interaction design, research, concept, prototyping.

What I designed: The navigation system, alert dashboard, flood map interface, offline functionality, and SOS emergency feature.

Outcome or validation: Prototype built and refined through user feedback and research insights.

Why Asuo?

Why Asuo?

Why Asuo?

I grew up in Accra, where rainy seasons often turned streets into dangerous flood zones. On June 3, 2015, flooding triggered a gas station explosion near Circle and claimed 154 lives. That tragedy shaped Asuo.


Asuo, meaning “flowing water” in Akan/Twi, is an offline flood navigation app that uses preloaded flood data and weather forecasts to guide people to safer walking routes, nearby shelters, and emergency SOS support.

I grew up in Accra, where rainy seasons often turned streets into dangerous flood zones. On June 3, 2015, flooding triggered a gas station explosion near Circle and claimed 154 lives. That tragedy shaped Asuo.


Asuo, meaning “flowing water” in Akan/Twi, is an offline flood navigation app that uses preloaded flood data and weather forecasts to guide people to safer walking routes, nearby shelters, and emergency SOS support.

Available on TestFlight

Available on TestFlight

Available on TestFlight

Apple's beta testing platform, install and try the app.

Apple's beta testing platform, install and try the app.

Scan to try Asuo

or

Sketches and ideation

Sketches and ideation

Sketches and ideation

Designing for crisis means designing for someone who has no time to think. High contrast alerts, clear zone labels, and a map that speaks before you read it. Every decision was intentional.

Designing for crisis means designing for someone who has no time to think. High contrast alerts, clear zone labels, and a map that speaks before you read it. Every decision was intentional.

Designing for crisis means designing for someone who has no time to think. High contrast alerts, clear zone labels, and a map that speaks before you read it. Every decision was intentional.

Low Fidelity Wireframes

Low Fidelity Wireframes

Low Fidelity Wireframes

Before refining the visual design, I used lo fi wireframes to focus on structure and usability. This stage helped me test layout, navigation, and content priority, making sure the most important actions were easy to find and understand in a moment of crisis.

Before refining the visual design, I used lo fi wireframes to focus on structure and usability. This stage helped me test layout, navigation, and content priority, making sure the most important actions were easy to find and understand in a moment of crisis.

Before refining the visual design, I used lo fi wireframes to focus on structure and usability. This stage helped me test layout, navigation, and content priority, making sure the most important actions were easy to find and understand in a moment of crisis.

User Interaction Design

User Interaction Design

User Interaction Design

System Architecture

System Architecture

Building an offline flood navigation system means every decision has to work without internet. This is the architecture I designed to make that possible.

Building an offline flood navigation system means every decision has to work without internet. This is the architecture I designed to make that possible.

Flood Risk Scoring Formula
Score = (Rain x 0.4) + (Drainage x 0.3) + (Elevation x 0.2) + (River x 0.1)
Danger ≥ 3.5  ·  Caution ≥ 2.0  ·  Safe < 2.0
External Data Sources
Weather Prediction API
Ghana Meteorological Agency. Real-time rainfall data, flood warnings, and weather forecasts.
Water Level Sensors
IoT sensors on Odaw River and drainage outlets. Real-time water depth and flow rate per zone.
Historical Flood Records
Past flood events, affected areas, water levels, and damage data used to calibrate risk models.
Geographic Data
Topographic and elevation data. Terrain, drainage infrastructure, and land use for each zone.
OpenStreetMap
Map tiles at multiple zoom levels, road network geometry, and geographic features. Cached locally for offline use.
Shelter Database
Emergency shelters, hospitals, and safe locations. Name, GPS coordinates, capacity, and current status.
Zone Characteristics
Per-zone data: population, drainage score, elevation score, river proximity, and drainage infrastructure status.
View full architecture
Backend Server
Asuo Backend
Ingests data, calculates risk, builds grid, finds safe routes
Data Ingestion
Receives weather and sensor data. Normalizes into rain intensity levels and flood phases.
Flood Risk Engine
Runs weighted formula per zone. Outputs risk level and estimated water depth.
Grid Builder
Builds 40x30 pathfinding grid. Danger = impassable. Caution = high cost. Safe = low cost.
A* Pathfinding
Finds safest route avoiding danger zones. Returns waypoints and estimated travel time.
Push Notifications
Alerts on phase changes: approaching, active, receding, all clear
WebSocket
Real-time updates: zone risk changes, route reroutes, status messages
Status Generator
Produces human-readable messages from live sensor data
Communication Layer
Weather updatesZone risk levelsShelter availabilitySafe route dataReal-time alerts
Sent to the app when online, cached for offline use
iOS App (On Device)
Asuo iOS App Works Offline
Three-tab interface powered by SwiftUI and @Observable engine
Alert Dashboard
Phase banner (clear to safe)Rain intensity meterWeather status + countdownZone flood cardsStatus message cardSOS slide-to-call
Flood Map
Zoomable, pannable mapColor-coded flood zonesOdaw River overlayShelter + hospital markersWater depth badgesZone detail sheet
Safe Route
Destination selectionWalking / driving toggleRoute preview on mapTurn-by-turn navigationCamera follows userArrival confirmation
Local Cache
Map tiles, zone data, shelters, routes. Powers offline mode.
On-Device Engine
Navigation tracking, heading, position interpolation, shelter proximity.
GPS
Real-time user position via CoreLocation. Feeds navigation.
Accessibility
Haptics, speech synthesis, VoiceOver, reduce motion support.
Device Hardware Used
GPS Sensor
Haptic Engine
Speaker
Phone Dialer
Network
Collapse
Flood Risk Scoring Formula
Score = (Rain x 0.4) + (Drainage x 0.3) + (Elevation x 0.2) + (River x 0.1)
Danger ≥ 3.5  ·  Caution ≥ 2.0  ·  Safe < 2.0
External Data Sources
Weather Prediction API
Ghana Meteorological Agency. Real-time rainfall data, flood warnings, and weather forecasts.
Water Level Sensors
IoT sensors on Odaw River and drainage outlets. Real-time water depth and flow rate per zone.
Historical Flood Records
Past flood events, affected areas, water levels, and damage data used to calibrate risk models.
Geographic Data
Topographic and elevation data. Terrain, drainage infrastructure, and land use for each zone.
OpenStreetMap
Map tiles at multiple zoom levels, road network geometry, and geographic features. Cached locally for offline use.
Shelter Database
Emergency shelters, hospitals, and safe locations. Name, GPS coordinates, capacity, and current status.
Zone Characteristics
Per-zone data: population, drainage score, elevation score, river proximity, and drainage infrastructure status.
View full architecture
Backend Server
Asuo Backend
Ingests data, calculates risk, builds grid, finds safe routes
Data Ingestion
Receives weather and sensor data. Normalizes into rain intensity levels and flood phases.
Flood Risk Engine
Runs weighted formula per zone. Outputs risk level and estimated water depth.
Grid Builder
Builds 40x30 pathfinding grid. Danger = impassable. Caution = high cost. Safe = low cost.
A* Pathfinding
Finds safest route avoiding danger zones. Returns waypoints and estimated travel time.
Push Notifications
Alerts on phase changes: approaching, active, receding, all clear
WebSocket
Real-time updates: zone risk changes, route reroutes, status messages
Status Generator
Produces human-readable messages from live sensor data
Communication Layer
Weather updatesZone risk levelsShelter availabilitySafe route dataReal-time alerts
Sent to the app when online, cached for offline use
iOS App (On Device)
Asuo iOS App Works Offline
Three-tab interface powered by SwiftUI and @Observable engine
Alert Dashboard
Phase banner (clear to safe)Rain intensity meterWeather status + countdownZone flood cardsStatus message cardSOS slide-to-call
Flood Map
Zoomable, pannable mapColor-coded flood zonesOdaw River overlayShelter + hospital markersWater depth badgesZone detail sheet
Safe Route
Destination selectionWalking / driving toggleRoute preview on mapTurn-by-turn navigationCamera follows userArrival confirmation
Local Cache
Map tiles, zone data, shelters, routes. Powers offline mode.
On-Device Engine
Navigation tracking, heading, position interpolation, shelter proximity.
GPS
Real-time user position via CoreLocation. Feeds navigation.
Accessibility
Haptics, speech synthesis, VoiceOver, reduce motion support.
Device Hardware Used
GPS Sensor
Haptic Engine
Speaker
Phone Dialer
Network
Collapse
Flood Risk Scoring Formula
Score =
(Rain x 0.4)
+ (Drainage x 0.3)
+ (Elevation x 0.2)
+ (River x 0.1)
Danger ≥ 3.5  ·  Caution ≥ 2.0  ·  Safe < 2.0
External Data Sources
Weather Prediction API
Ghana Meteorological Agency. Real-time rainfall data, flood warnings, and weather forecasts.
Water Level Sensors
IoT sensors on Odaw River and drainage outlets. Real-time water depth and flow rate per zone.
Historical Flood Records
Past flood events, affected areas, water levels, and damage data used to calibrate risk models.
Geographic Data
Topographic and elevation data. Terrain, drainage infrastructure, and land use for each zone.
OpenStreetMap
Map tiles at multiple zoom levels, road network geometry, and geographic features. Cached locally for offline use.
Shelter Database
Emergency shelters, hospitals, and safe locations. Name, GPS coordinates, capacity, and current status.
Zone Characteristics
Per-zone data: population, drainage score, elevation score, river proximity, and drainage infrastructure status.
View full architecture
Backend Server
Asuo Backend
Ingests data, calculates risk, builds grid, finds safe routes
Data Ingestion
Receives weather and sensor data. Normalizes into rain intensity levels and flood phases.
Flood Risk Engine
Runs weighted formula per zone. Outputs risk level and estimated water depth.
Grid Builder
Builds 40x30 pathfinding grid. Danger = impassable. Caution = high cost. Safe = low cost.
A* Pathfinding
Finds safest route avoiding danger zones. Returns waypoints and estimated travel time.
Push Notifications
Alerts on phase changes: approaching, active, receding, all clear
WebSocket
Real-time updates: zone risk changes, route reroutes, status messages
Status Generator
Produces human-readable messages from live sensor data
Communication Layer
Weather updatesZone risk levelsShelter availabilitySafe route dataReal-time alerts
Sent to the app when online, cached for offline use
iOS App (On Device)
Asuo iOS App Works Offline
Three-tab interface powered by SwiftUI and @Observable engine
Alert Dashboard
Phase banner (clear to safe)Rain intensity meterWeather status + countdownZone flood cardsStatus message cardSOS slide-to-call
Flood Map
Zoomable, pannable mapColor-coded flood zonesOdaw River overlayShelter + hospital markersWater depth badgesZone detail sheet
Safe Route
Destination selectionWalking / driving toggleRoute preview on mapTurn-by-turn navigationCamera follows userArrival confirmation
Local Cache
Map tiles, zone data, shelters, routes. Powers offline mode.
On-Device Engine
Navigation tracking, heading, position interpolation, shelter proximity.
GPS
Real-time user position via CoreLocation. Feeds navigation.
Accessibility
Haptics, speech synthesis, VoiceOver, reduce motion support.
Device Hardware Used
GPS Sensor
Haptic Engine
Speaker
Phone Dialer
Network
Collapse

Next Steps

Next Steps


  • Conduct usability testing with real users in flood-prone communities in Accra to validate the experience

  • Integrate live weather and flood data to move the app from simulation to real-time prediction

  • Partner with local authorities in Ghana to expand flood zone data coverage and emergency response integration




  • Conduct usability testing with real users in flood-prone communities in Accra to validate the experience

  • Integrate live weather and flood data to move the app from simulation to real-time prediction

  • Partner with local authorities in Ghana to expand flood zone data coverage and emergency response integration




  • Conduct usability testing with real users in flood-prone communities in Accra to validate the experience

  • Integrate live weather and flood data to move the app from simulation to real-time prediction

  • Partner with local authorities in Ghana to expand flood zone data coverage and emergency response integration



Tools

Tools

PhotoshopPhotoshop
FigmaFigma
Google GeminiGoogle Gemini
Claude CodeClaude Code
XcodeXcode
SwiftUISwiftUI
IllustrattorIllustrattor