Skip to content

shivanjalikarande/SafeGo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

44 Commits
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

🌐 SafeGo – Emergency Safety App for Travelers

SafeGo is a safety-first mobile application that provides real-time emergency support for travelers, helping them stay protected by automating SOS alerts, tracking responsiveness, and giving quick access to emergency contacts and services based on their location.


πŸ“– Project Description

SafeGo is an emergency safety and responsiveness tracking app specifically designed for travelers, especially those visiting unfamiliar regions or countries. The app ensures that users are never truly alone during emergencies by leveraging real-time location tracking, local emergency services data, and personalized SOS alerts. Users can configure automatic "Are you safe?" alerts at custom intervals to check in on their safetyβ€”if unresponsive, the app logs the incident as an alert and can notify saved trusted contacts.

Built with a focus on simplicity and reliability, SafeGo eliminates the need for manual help-seeking during critical moments by automating emergency responses like sending location-based SMS alerts. It also helps users stay connected by maintaining a directory of local emergency services based on their country and location. With passwordless login via Supabase, minimal setup, and robust background services, SafeGo offers a practical, real-world solution to the increasing need for safety tools during travel or solo commutes. It aims to bring peace of mind to users and their families by ensuring help is just a clickβ€”or lack of responseβ€”away.


πŸš€ Core Features

πŸ”’ 1. Passwordless Authentication

  • Seamless login using email-based magic links powered by Supabase.
  • No need to remember passwords – secure and user-friendly.

πŸ“ 2. Real-Time Location-Based Emergency Services

  • Continuously fetches the user's live GPS location.
  • Displays country-specific emergency services such as:
    • πŸš“ Police
    • πŸš’ Fire Station
    • πŸš‘ Ambulance

πŸ‘₯ 3. Emergency Contact Directory by Region

  • Automatically fetches and displays regional emergency services based on location.
  • Allows quick direct contact in case of emergency.

πŸ“ž 4. Personal Emergency Contacts

  • Users can add and manage trusted family and friends as personal emergency contacts.
  • Contact data is securely stored in Supabase and used in alerts.

πŸ†˜ 5. One-Tap SOS Alerts

  • Instantly sends an SOS with:
    • User's current location
    • Reason for alert
    • Timestamp
  • Sends alerts to:
    • Personal emergency contacts (via SMS)
    • Displays local emergency services nearby

⏱️ 6. Alert Responsiveness System

  • Periodically prompts the user: β€œAre you safe?”
  • If the user doesn't respond within 2 minutes:
    • Automatically logs an Unresponsive Alert in the alert history
    • Displays it with yellow severity, indicating concern

πŸ•“ 7. Periodic Check-In Settings

  • User can enable or disable periodic responsiveness checks.
  • Choose interval: 2 mins, 1 hr, 2 hrs, or 4 hrs.
  • Runs in the background even if the app is closed.

πŸ“± Screenshots


πŸ› οΈ Tech Stack

Layer Technologies Used
πŸ’» App Framework Flutter
πŸ” Auth & Database Supabase (email magic links, PostgreSQL)
πŸ“ Location Services Geolocator, Geocoding, Google Maps API
πŸ”” Notifications flutter_local_notifications
πŸ•’ Background Tasks WorkManager
πŸ“¦ Local Storage shared_preferences, flutter_secure_storage
πŸ“ž SMS Integration Telephony Plugin
🧭 Time Utils intl, timezone packages

🧠 How It Works

  1. On login, user is authenticated using Supabase email magic link.
  2. Live GPS fetches the user's location and current country.
  3. User can maintain a profile by adding family or trusted contacts.
    • In case of emergency, automatic SMS alerts are sent to these saved contacts.
  4. Nearby emergency services (police, ambulance, fire) are displayed based on location.
  5. User can send a manual SOS or receive periodic β€œAre you safe?” alert prompts.
  6. If user doesn’t respond within 2 minutes:
    • An auto SOS is triggered.
    • An "Unresponsive" alert is logged with yellow severity.
  7. Alert history is maintained for review and safety tracking.

βœ… Project Highlights

  • Built for solo travelers, tourists, or emergency-prone situations.
  • Ensures safety even when the app is minimized or user is inactive.
  • Lightweight, user-friendly, and privacy-conscious design.

πŸ”§ Development Setup

πŸ“± Frontend (Flutter App)

Requirements:

  • Flutter SDK (β‰₯ 3.7.0)
  • Dart SDK
  • Android Studio or Visual Studio Code (with Flutter plugin)
  • Android Emulator or physical device

Installation:

flutter pub get
flutter run

npm install @supabase/supabase-js express cors body-parser

🌐 Backend Setup

Supabase handles most backend operations (auth, DB). This backend is optional for additional tasks like email/SMS alerts or testing.

πŸ›  Requirements:

  • Node.js (v18+ recommended)
  • Supabase project (with API keys)
  • Gmail SMTP / Email service (for testing)

πŸ“¦ Installation Commands:

npm install node-fetch node-cron dotenv
npm install @supabase/supabase-js express cors body-parser nodemailer

πŸ“¦ Flutter Packages Used

  • supabase – Passwordless auth, DB operations
  • flutter_local_notifications – Alert popups
  • workmanager – Background task execution
  • geolocator & geocoding – Live location and address
  • permission_handler – Location/SMS permission handling
  • flutter_secure_storage – Store session/token securely
  • shared_preferences – Store user toggles/settings
  • http – API requests
  • intl – Date/time formatting
  • path, path_provider – File operations
  • url_launcher – Open Google Maps links or dial numbers
  • jwt_decoder – Supabase token decoding
  • telephony – Send SMS (for Android devices)
  • image_picker – Select profile images (if used)
  • mime – File type handling

About

SafeGo is a mobile safety application built using Flutter and Supabase, designed to provide emergency assistance and monitoring for travelers and individuals in vulnerable situations. It ensures users remain responsive and can get help quickly during emergencies.

Resources

Stars

0 stars

Watchers

2 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors