Inspiration
Living in an area prone to frequent typhoons and disasters in the Philippines inspired the creation of EvacuAid. The app is designed to bolster disaster management efforts by improving the efficiency of response operations, drawing inspiration from real-world scenarios and the reporting format of the Disaster Response Operations Monitoring and Information Center (DROMIC). Additionally, it aims to facilitate centers with specific requests for goods by activating real-time awareness among the public.
What it does
EvacuAid optimizes aid distribution during disasters by identifying sites in greater need and allowing them to specify required goods in a public inventory. The app enables the public to view these sites on a map and access relevant contacts for donation coordination. Internally, it follows a reporting system similar to DROMIC, enhancing coordination between disaster management entities and evacuation site authorities, such as Local Government Units (LGUs). The app supports the creation of monitoring reports with restricted access. The reporting system helps foster internal and external collaboration and allows public transparency. While initially based on the Philippine reporting system, it's adaptable to other reporting systems and the inventory needs of various stakeholders. Finally, efficiently identifying priority sites through EvacuAid not only streamlines disaster response operations but also maximizes the distribution of resources, promoting sustainability and ensuring optimal utilization in times of need.
How we built it
EvacuAid is a Multipage Streamlit app developed using Python and pandas. It incorporates various Streamlit features, including Theming, SQLAlchemy for data connection, dataframes, secrets, and diverse Streamlit elements, such as pydeck and streamlit_extras. Design elements were crafted using Canva.
Challenges we ran into
The development process encountered several challenges, including issues with the folium map rendering, which prompted the adoption of pydeck. Integrating databases posed additional hurdles as connecting them together and filtering the required information for users required a lot of testing. The chatbot component was another challenge due to time constraints, resulting in a basic implementation. Navigating the complexities of hiding specific pages before user authentication also presented its own set of challenges.
Accomplishments I'm proud of and things I learned
Despite facing challenges, the project achieved significant milestones. Overcoming difficulties with features like st.data_editor and st.column_config.ProgressColumn thoroughly tested my problem-solving skills. Additionally, the hurdles encountered, such as the need to swiftly learn about pydeck for map visualization and the basics of chatbot development, instilled in me a sense of pride for successfully implementing these functionalities. This experience reinforced the importance of adapting quickly and finding effective solutions when navigating new technologies.
What's next for EvacuAid Hub
The chatbot could be enhanced for better user-friendliness and sophistication, potentially adopting a ChatGPT-style interaction. Addressing glitches, improving authentication security, and implementing user login/password options are other areas that need improvement. The app's adaptability will be enhanced by allowing users to modify the database and providing an option to update the inventory. Collaboration with experts in Disaster Response Operations could also help refine the app's functionality and align it more closely with actual processes.
Built With
- pydeck
- python
- sqlalchemy
- streamlit
Log in or sign up for Devpost to join the conversation.