Skip to content

Watson AI powered platform for equitable disaster relief , ensuring fair and real time access to essential resources

Notifications You must be signed in to change notification settings

Sadhvi-Nayak/Aid4All

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Aid4All

AI-powered platform for real-time, equitable disaster resource management.

pic (1)

Our team aimed to address the inefficiencies and inequities in disaster relief efforts. Many affected communities struggle with delayed or unequal access to essential resources like food, shelter, and medical aid. Aid4All seeks to provide a fair, real-time solution by optimizing resource distribution, improving coordination, and ensuring that help reaches those who need it most.

Project Summary

Aid4All - An AI-Powered Disaster Relief Platform

Disaster relief is often hampered by delays, unequal distribution of resources, and a lack of real-time information. Communities affected by natural calamities, such as floods, earthquakes, or hurricanes, frequently experience challenges in accessing critical aid like food, shelter, medical supplies, and financial assistance. Aid organizations struggle with coordinating efforts, managing volunteers, and efficiently allocating resources to the most affected areas.

Aid4All is our solution to these challenges, leveraging AI to ensure equitable, real-time access to disaster relief resources. Built using a combination of HTML, CSS, and Bootstrap for the frontend, Python Flask for the backend, and Watsonx AI for predictive capabilities, Aid4All is a comprehensive platform designed to streamline relief operations and ensure that no community is left behind during a disaster.

Key Features

  1. Crisis Dashboard with AI Predictions Aid4All features a dynamic crisis dashboard that enables users to select ongoing or upcoming natural calamities, such as floods or wildfires, and view real-time data. Watsonx AI powers predictive models that analyze weather patterns, historical data, and current conditions to forecast the severity and potential impact of disasters on specific locations. This feature helps both users and administrators anticipate and prepare for crises in advance.

  2. Resource Request System During a disaster, affected individuals can use Aid4All to submit resource requests for food, shelter, medical supplies, or financial aid through a simple form. These requests are captured in the system and displayed in a table for administrators to process and prioritize based on the most urgent needs. Users can track the status of their requests to ensure transparency and accountability.

  3. Donation and Support Aid4All allows users to donate funds to support relief efforts. Donors can view a list of available donation campaigns and contribute directly through the platform. The funds are then allocated to specific resource requests, ensuring that donations are used effectively to support communities in need. The platform also provides transparency by showing how donations are used.

  4. Volunteer Signup and Task Assignment Volunteers play a crucial role in disaster relief, and Aid4All makes it easy for them to sign up and offer their assistance. Volunteers can register via the platform, and their information is stored in the database. The system matches volunteers with specific tasks based on their location, availability, and skill set. This ensures that volunteer efforts are efficiently coordinated and that the right people are deployed to the right areas.

  5. Supply Management and Tracking Aid4All provides an integrated supply management system that consolidates data from resource requests and volunteer assignments. This feature allows administrators to track which volunteers are distributing aid and monitor the progress of resource deliveries. The system helps prevent bottlenecks and ensures that relief reaches affected areas in a timely manner.

  6. Real-Time Updates and External Data Integration Aid4All integrates with external APIs, such as news APIs and government data sources, to provide real-time updates on disaster conditions. Users can stay informed about the latest developments and receive alerts about any changes in their area. This real-time data helps improve decision-making and ensures that relief efforts are aligned with current needs.

Impact

With Aid4All, disaster relief efforts become more organized, transparent, and equitable. The platform ensures that resources reach the most vulnerable communities quickly and efficiently while providing real-time information and predictive insights. Aid4All empowers individuals, organizations, and volunteers to collaborate in a more effective way, ultimately saving lives and accelerating recovery efforts.

Technology Implementation

Aid4All uses a robust tech stack to power its platform:

  • Frontend: HTML, CSS, and Bootstrap for a responsive, user-friendly interface.
  • Backend: Python Flask for handling user interactions, data processing, and resource management.
  • AI: Watsonx AI for predictive analytics, generating disaster forecasts, and optimizing resource distribution.
  • Database: SQLite to store user data, requests, donations, and volunteer information.
  • Cloud: IBM Cloud for hosting and scalability.

Solution Architecture

Architecture

Project development roadmap

Architecture

Presentation Materials

Video Demo: Youtube Link
PPT Presentation: View here

Steps to setup

  • Install python on your linux machine using the command 'sudo yum install python3.9'
  • Clone this repo into your local machine and open it using VS code or any other editor of your choice.
  • Open the terminal and create a virtual environment using the command 'python3.9 -m venv aid4all'
  • Activate the virtual env created using the command 'source aid4all/bin/activate'
  • Verify python version inside venv by running python --version. It should be 3.9.19
  • Once activated, install all the packages using the command 'pip install -r requirements.txt'.
  • Once all packages are installed create a .env file and add the following:
NEWS_API_KEY="" (Get the API Key from https://newsapi.org/docs/endpoints/sources)
EMAIL="" (Email ID from which you want to send the mails)
SECRET_KEY="" (Steps to get this is mentioned below)
WATSONX_ACCESS_TOKEN="" (Steps to get this is mentioned below)
WATSONX_API_URL="https://us-south.ml.cloud.ibm.com/ml/v1/text/generation?version=2023-05-29"
  • Now you are ready to run the application. Type 'py app.py' in the terminal and hit enter.
  • A link like http://127.0.0.1:5000/ will pop up in the terminal. Press Ctrl and click on the link to open it in the browser to see the landing page of the application.

Mail Auth

To set up the app password for the Gmail ID you will be used for sending emails:

  1. Enable 2-factor authentication on your mail ID.
  2. Go to this website https://myaccount.google.com/apppasswords
  3. Enter the app name you wish and a app password will be created. You have to use this as the secret key and paste it in the .env file.
  4. Yea! You are all set to send alerts using the mailing services.

Watsonx Auth

To Configure the watsonx prompt lab and authenticate.

  1. Create the project in the watsonx dataplatform(https://dataplatform.cloud.ibm.com/wx/prompts)
  2. Create the API key in same the project created.
  3. Generate the token using this API key, use the following command.
    curl -X POST "https://iam.cloud.ibm.com/identity/token" --header 'Content-Type: application/x-www-form-urlencoded' --header 'Accept: application/json' --data-urlencode 'grant_type=urn:ibm:params:oauth:grant-type:apikey' --data-urlencode 'apikey=<API_KEY>
  4. Add this api token in the .env file.
  5. In app.py update the project_id in the request body.

Actions that can be performed

Crisis Dashboard

  • Users can input disaster type and location to receive AI-based predictions on severity.
  • Displays real-time data on disasters using Watsonx predictions.
  • Interactive map displaying disaster-prone areas with markers indicating intensity (low, medium, high) reported by the users.
  • View current news headlines fetched from a new API.

Admin Page

  • Form to add the crisis data reported by the users.
  • Interactive map to view the added data.

Resource Request Page

  • Affected individuals can submit requests for food, shelter, medical supplies, etc.
  • Admins can view and prioritize resource requests.
  • Available Resources, Emergency contacts and FAQs can be viewed.

Volunteer Signup Page

  • Volunteers can sign up using a simple form.
  • Volunteers are displayed in a table view, showing their details.

Supply Management

  • Displays a table showing resources distributed by volunteers, tracking who delivered what to which location.
  • Features three cards highlighting the top volunteer performers for recognition.
  • Provides a creative display of available stock of resources for quick insights.

Snapshots

Home Page

image image image

Crisis Dashboard

image image image

Admin Page

image image

Resources Request Page

image image image

Donate & Support

image image image

Volunteer Signup

image image image

Supply Management

image

About

Watson AI powered platform for equitable disaster relief , ensuring fair and real time access to essential resources

Topics

Resources

Stars

Watchers

Forks

Contributors 4

  •  
  •  
  •  
  •