Your Pocket Companion for Emergency Preparedness & Community Support.
ResQ PH is a centralized mobile application designed to bridge the gap between the public and emergency services. It reduces the time spent searching for emergency contacts while fostering a supportive community where users can share survival experiences and disaster safety tips.
- About the Project
- Key Features
- Target Audience
- Limitations
- Tech Stack
- Development Team
- Getting Started
- Contributing
- License
In critical situations, every second counts. ResQ PH aims to:
- Reduce Search Time: Eliminate the panic of searching for hotlines by providing a centralized directory.
- Ensure Accessibility: Make emergency contacts available even without an internet connection.
- Build Community: Create a platform for sharing survival stories, tips, and practical advice.
While this app acts as an information and sharing platform, its ultimate goal is to enable responders to take quicker action. By providing users with instant, verified access to the correct local emergency hotlines, we streamline the initial contact process, reducing overall response times.
- Secure sign-up and login powered by Firebase.
- Account Safety: Features a "Soft Delete" with a 30-day grace period, allowing users to reactivate their accounts simply by logging back in.
- Interactive Posts: Share survival stories, tips, and advice.
- Engagement: Like posts and participate in discussions via a full commenting system (add, edit, delete).
- Organized Browsing: Filter posts by category (Survival Story, Disaster Tip, etc.) and navigate using pagination.
- Polished UX: Integrated skeleton loading for a smooth browsing experience.
- Real-Time Map: Powered by OpenStreetMap, allowing users to see active community members nearby.
- π¨ Emergency Mode: Broadcast your status instantly. Your marker turns red with a "NEED HELP!" alert.
- Proximity Alerts: Automatically notifies nearby users (within a 5km radius) when an emergency broadcast is initiated.
- Active Users List: A live overlay showing active participants and their current status.
- Offline Access: Full directory available without internet or cellular data.
- Search & Filter: Quickly find specific hotlines using the search bar.
- One-Tap Calling: Direct dialer integration for immediate contact. Tap the call button on any emergency contact card to instantly open your phone's dialer with the number pre-filled.
- Pagination: Navigate through emergency contacts with easy-to-use page controls (3 contacts per page).
- Stay Informed: Real-time disaster news and weather reports.
- Rich Content: Visual feed with article images, summaries, and source verification.
- The app intelligently manages connectivity. While the Emergency directory remains fully functional offline, other tabs (Home, News, Tracker) are gracefully disabled to prioritize essential safety information.
- Initials-based Avatars: Automatically generated colorful avatars based on user names.
- Profile Customization: Easily update name, email, and security settings.
| Segment | Benefit |
|---|---|
| General Public | Immediate access to reliable hotlines during emergencies and a platform to learn/share survival tips. |
| Emergency Responders | Indirectly benefits from streamlined calls. Users calling the right department leads to faster coordination and verified information flow. |
- Information Only: This application serves as an information and sharing platform. It does not directly connect users to emergency responders via the app itself, nor does it provide real-time rescue services.
- Limited Coverage: The emergency contact directory initially covers selected regions. We aim to expand this in future updates based on available data sources.
- Community Dependent: The effectiveness of the "Sharing Hub" relies on active user participation.
- Data Privacy: While basic security measures are implemented, users are advised to be mindful when sharing sensitive personal details in public stories or bios.
- UI Framework: Jetpack Compose (Material 3)
- Authentication: Firebase Authentication
- Cloud Database: Cloud Firestore (Real-time updates)
- Local Database: Room Persistence Library (SQLite)
- Maps: OpenStreetMap (osmdroid)
- Networking: Retrofit & Gson
- Image Loading: Coil
| Icon | Name | Role |
|---|---|---|
| John Matthew Arroyo | Backend Developer | |
| Kathleen Citron | QA Tester | |
| Justine Delima | Project Manager | |
| Patricia Quiambao | UI/UX Developer 1 | |
| Ma. Bea Mae Ynion | UI/UX Developer 2 |
Follow these instructions to get a copy of the project up and running on your local machine for development and testing purposes.
- Android Studio (latest version recommended)
- Java Development Kit (JDK) 11 or higher (usually bundled with Android Studio)
- Clone the repository
git clone https://github.com/your-username/ResQ-PH.git
- Open in Android Studio
- Launch Android Studio.
- Select "Open an existing Android Studio project".
- Navigate to the cloned directory and select it.
- Configure API Keys
- Copy
local.properties.exampletolocal.properties - Add your News API key:
NEWS_API_KEY=your_actual_api_key_here - Get your free API key from NewsAPI.org
- Important:
local.propertiesis gitignored and should never be committed
- Copy
- Sync Gradle
- Android Studio should automatically detect the
build.gradle.ktsfiles and sync. - If not, click "File" > "Sync Project with Gradle Files".
- Android Studio should automatically detect the
- Run the application
- Connect an Android device or start an Emulator.
- Click the green "Run" button (Play icon) in the toolbar.
Contributions are what make the open-source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature) - Commit your Changes (
git commit -m 'Add some AmazingFeature') - Push to the Branch (
git push origin feature/AmazingFeature) - Open a Pull Request
Distributed under the [MIT] License. See LICENSE for more information.
ResQ PH β Empowering communities, one connection at a time.