The SOS client is a Kotlin-based Android app for an Emergency Response System (ERS) that can quickly alert emergency services with a single tap. It shares the user’s real-time location and notifies configured contacts instantly.
Written with Jetpack Compose and integrates with our Spring Boot backend. This source code is part of the CSC 211 (Software Workshop II) course project for group 1.
- Single-tap button that notifies pre-configured emergency responders
- Shares real-time GPS coordinates
- Default emergency actions include:
- Police
- Hospital
- Fire Station
- Family
- Real-time GPS sharing with the backend
- Enables location-aware responder dispatchng
- Add trusted family/friends as emergency contacts
- Default contact is prompted during setup
- Report incidents like theft, accidents or fires
- Include:
- Type of Incident
- Description
- Optional photo/video
- Auto-detected and editable location
- Customizable emergency settings:
- Auto-call / Auto-SMS
- Silent mode
- Who to notify and how
- Android Studio Giraffe or later
- Kotlin 1.9+
- Android SDK 33+
git clone https://github.com/dev-xero/sos-client.git
cd sos-client
- Open the project in Android Studio
- Connect your Android device or emulator
- Click Run or F10
- Kotlin & Jetpack Compose
- Core androidx libraries
- Splash API
- Dagger Hilt for dependency injection
- Compose Navigation
- Datastore preferences for app preferences
- Google Play Location API services
- Google Accompanist for api compatibility
Layer | Technology |
---|---|
Mobile | Kotlin, Jetpack Compose, AndroidX |
Backend | Spring Boot, PostgreSQL |
CI/CD | GitHub Actions |
Infra | Docker, AWS |
Before contributing, read the contents of the docs/
folder and familarize yourself with the project structure.