RebuildZone is built to develop an emergency relief system, providing humanitarian aid during natural disasters (floods, landslides, etc.) and pandemics, especially in Vietnam, after experiencing COVID-19 and Typhoon YAGI.
The project was initiated for the Vietnamese Open Source Software-Olympic IT Students Contest 2024. It is open-sourced under the Apache 2.0 license by the author team Lazy Sunday Morning (LSM).
For more information about the contest, visit vfossa.vn.
Canva presentation link at the competition: link
- Introduction
- Core Features
- System Architecture
- Project Structure
- Installation Guide
- Contributing
- License
RebuildZone focuses on supporting individuals during crises by leveraging technology, including AI, multilingual features, and efficient resource management.
The project highlights the following main features:
- Personal status declaration (health, condition, and emergencies)
- Image processing for damage predictions and statistics
- Donation and humanitarian support management
- Decision-making suggestions
- Chatbot for health consultations and emergency guidance
- Multilingual support for foreigners in Vietnam
rebuild-zone/
├── chatbot-server/ # (Flask server) - AI Chatbot
│ ├── instance/ # SQLite database for saving chat history
│ ├── app.py # Main application
│ ├── requirements.txt # Python dependencies for the environment
│ └── Dockerfile
│
├── xray-server/ # (Flask server) - ChestXray
│ ├── imageutil/ # Implements GradCAM technique
│ ├── models/ # CNN models
│ ├── app.py
│ ├── requirements.txt
│ └── Dockerfile
│
├── budibase/ # Budibase UI
│ ├── attachments/ # Image attachments
│ ├── budibase-client.js # Budibase settings and configurations
│ ├── db.txt # Budibase built-in database configuration & data
│ └── manifest.js
└── docker-compose.yml # Docker Compose configuration
-
Install Docker:
- Download Docker: Get Docker.
- Verify installation:
docker --version docker info
-
Run Budibase with Docker Compose:
- Start Budibase and MongoDB containers:
docker-compose up -d
- Start Budibase and MongoDB containers:
-
Create Login Account: Follow the prompts to set up your account.
-
Add an empty app:
-
Add our app:
Import an app and access it via: http://localhost:10000/builder/portal/{app-name}.
-
Install Python and Dependencies: Ensure Python 3.6+ is installed:
python --version python -m ensurepip --upgrade
-
Install Requirements
-
Navigate to
chatbot-server
thenxray-server
:cd rebuild-zone/chatbot-server cd rebuild-zone/xray-server
-
Install project dependencies from
requirements.txt
:pip install -r requirements.txt
-
Run Flask App: Set up environment variables and run
python3 -m flask run
You can contact us via email to have free access to our testing sandbox.
-
Install project environment with provided example /.env.example:
# BACK-END ENV FLASK_APP=app.py # For xray-server CLOUDINARY_CLOUD_NAME= CLOUDINARY_API_KEY= CLOUDINARY_API_SECRET= SENTRY_DNS= # For chat server OPENAI_API_KEY=openAPIKey ...
-
After finish setting up environment, you can run the following command:
python3 -m flask run
If the project is correctly set up, the terminal output will show this:
Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
If you would like to contribute to the project, please refer to the CONTRIBUTION.md for more details.
All contributions are highly valued, so don't hesitate to submit a pull request to the project.
- Trần An Tiến: 2151013099tien@ou.edu.vn
- Võ Quốc Huy: 2151013029huy@ou.edu.vn
- Trương Bùi Anh Tuấn: dev.atuan03@gmail.com
This project is licensed under the terms of the APACHE-2.0 license.