Inspiration

When the recent flash floods hit Nepal, I found myself wanting to do something that could actually help. Seeing people lose their loved ones, homes and livelihoods, while families struggled to find information and communities waited for assistance, made me think about how technology could be useful during a situation like this.

I kept thinking about what could have helped during those critical moments. What if information from people on the ground could reach response teams faster? What if official information, community reports and available resources could be brought together in one place? What if people asking for help could communicate directly with the teams responding to them?

That is what made me start building Sanket.

Sanket means “signal” in Nepali, reflecting the idea of turning scattered signals from authorities and people on the ground into information that can guide action.

The idea also connects to an experience I had much earlier. I experienced the 2015 earthquake in Nepal, and that experience stayed with me. Seeing another major disaster unfold years later made me realize that this is not a problem limited to one event. Nepal will continue to face earthquakes, floods, landslides, fires and other emergencies.

I wanted to build something that could be useful for the next disaster, whatever that disaster may be.

What It Does

Sanket is a two-way disaster intelligence and communication platform that connects official disaster information with what people are experiencing on the ground.

It brings together signals such as earthquake activity, rainfall, river conditions, road disruptions and official disaster reports with reports submitted by people and volunteers.

When a community report comes in, it does not exist in isolation. Sanket brings it together with the official information available for that area. Community reports show what is actually happening on the ground — who is affected and what they need — while official sources provide broader context and supporting evidence. By connecting these signals, Sanket gives response teams a clearer picture of the situation so they can understand, prioritize and act.

This is where the intelligence layer becomes important. Using Strands Agents with Gemini, Sanket can investigate a situation, determine what information is relevant, use the appropriate tools to gather evidence, and connect related signals rather than simply displaying information or acting as a chatbot.

The most important part of Sanket is the communication loop.

An affected person or volunteer can report a situation such as being trapped, needing medical assistance or being unable to access a road. Sanket understands the report, extracts the important information and turns it into an actionable incident or assistance request for the response team.

Response teams can then review the situation, investigate the available evidence, assign and update the response. The person on the ground can receive updates about what is happening with their case.

This creates a continuous loop:

People → Sanket → Response Teams → Action → People

Sanket is therefore not just a disaster map or chatbot. It connects what people are experiencing with what official systems know, and helps turn those signals into coordinated action.

How We Built It

I built Sanket as a full stack application with a Python FastAPI backend and a React and TypeScript frontend.

The backend is responsible for collecting and normalizing information from official sources, managing incidents and community reports, handling assistance requests and exposing the APIs used by the response center and affected person interface.

For real disaster information, I prioritized official sources wherever machine readable access is available, including earthquake data from USGS and official Nepal sources such as NEMRC, the Department of Hydrology and Meteorology, the Disaster Risk Reduction Portal and the Department of Roads.

The data is converted into a common structure so that information from very different sources can be compared and connected.

The intelligence layer is built using Strands Agents with an LLM. Rather than using the model simply as a chatbot, I use the agent to decide which information and tools are relevant to a situation, investigate available evidence, correlate reports and help determine the appropriate response.

At the same time, critical decisions such as geographic distance, freshness, severity calculations, status transitions and other deterministic rules remain in the backend rather than being left entirely to the LLM.

This gives Sanket a combination of agentic reasoning and predictable system behavior.

Challenges We Ran Into

One of the biggest challenges was working with disaster information that comes from many different systems. Government and official sources do not necessarily expose information in the same format or through the same type of interface.

I therefore had to design Sanket so that each source could be handled independently while still producing a common view of the situation.

Another challenge was deciding where AI should actually add value. Disaster response is not a place where I wanted an LLM simply making critical decisions. I had to separate tasks where an agent is useful such as understanding an unstructured report, deciding what information should be investigated and connecting related evidence from tasks that should remain deterministic, such as calculating distance, checking timestamps, determining severity and managing case status.

Building a two way communication flow was another challenge. It was not enough to allow someone to submit a report. The report needed to become an actionable case, reach the response center, support assignment and status updates, and eventually communicate the response back to the person who requested help.

I also had to balance the ambition of building a system for a national scale problem with what could realistically be built and demonstrated as a solo developer.

Accomplishments That I'm Proud Of

I am proud that Sanket goes beyond being a visualization or chatbot and creates an actual operational loop between people on the ground and response teams.

More importantly, I am proud of how the intelligence layer uses Strands and Gemini. Instead of simply generating an answer from a prompt, the agent can investigate a situation using controlled tools and different sources of information, helping response teams move from an individual report toward a more complete understanding of what is happening.

A community report can become a structured assistance request, appear in the response center alongside relevant official information, be investigated and prioritized, assigned to a response team, and eventually receive a status update.

I am also proud of building the intelligence layer around real tools and real data rather than creating a purely simulated AI experience.

The system is designed around official information, community observations, evidence and provenance so that response teams can understand not only what Sanket is recommending, but also why a situation has been prioritized.

Most importantly, I was able to take a problem that I have personally experienced and turn it into a working technology concept that could potentially be useful beyond a hackathon demonstration.

What I Learned

I learned that building AI for a critical problem is very different from simply adding an LLM to an application.

The most useful role for the agent is not to replace the entire system. It is to connect information that is difficult to process manually, understand unstructured human reports and determine what information should be investigated next.

I also learned how important data quality, freshness and provenance are when building systems around real world events. An intelligent answer is only useful if the information behind it can be trusted.

Most importantly, I learned that good disaster technology has to be designed around people, not just data. A map can show where something happened, but the real value comes from helping someone communicate their need and helping another person act on it.

What's Next for Sanket

My next goal is to make Sanket more useful in real disaster response scenarios rather than limiting it to a prototype.

I want to expand the number of official data sources, improve incident correlation and build stronger support for low connectivity environments so that people can still communicate when infrastructure is damaged.

I also want to improve the resource matching layer so Sanket can identify nearby hospitals, shelters, rescue resources and other assistance based on the actual needs reported by people.

Another important direction is learning from previous incidents. Over time, Sanket could build a structured history of incidents, response actions and outcomes so that response teams can make better decisions during future emergencies.

Beyond building the technology, I want to take Sanket to the ground and work directly with communities and response teams. I want to understand what actually matters during emergencies, promote real-world usage, and continuously improve the system based on the challenges, needs and opportunities that emerge from real situations.

Ultimately, I want Sanket to become a system that connects what is happening on the ground with the people responsible for responding to it, helping turn scattered signals into coordinated action when every minute matters.

Built With

  • ai-agents
  • community
  • data-correlation
  • disaster-intelligence
  • disaster-response
  • emergency-communication
  • fastapi
  • gemini
  • geospatial-intelligence
  • incident-management
  • maplibre-gl-js
  • nepal
  • postgresql
  • react
  • real-time-data
  • strands-agents
  • supabase
  • typescript
  • vite
Share this project:

Updates

Submission history