Skip to content

subhro1530/Nirbhaya_Android_App

Repository files navigation

🛡️ Nirbhaya – Women’s Safety App

📲 Features

🚨 Emergency SOS

  • One-tap SOS button to instantly send alerts
  • Sends a Google Maps link with your live location
  • Choose specific trusted contacts to notify
  • Includes personal info (Name, Blood Group, Phone, DOB) in the alert
  • WhatsApp integration for direct sharing

📇 Trusted Contacts

  • Add, edit, or delete emergency contacts
  • Fully functional CRUD interface with smooth UI
  • Stores contact data in local storage

🏠 Personal Dashboard

  • Displays user info like Email, Blood Group, Phone, DOB
  • User can edit profile info directly on the Home screen
  • Data is stored in local storage

📰 Articles for Awareness

  • Fetches real-time news related to women’s safety, laws, and tragedies
  • Uses free public API with filters
  • Images and headlines displayed in a card view

👤 Authentication

  • Signup and Login screens
  • Sign up collects all info shown on the dashboard
  • User ID derived from email prefix
  • Profile image shown in top navigation

🌐 Smooth Navigation

  • Custom bottom tab navigation with:
    🏠 Home
    📇 Contacts
    📰 Articles
    👤 Profile
  • Middle button is a prominent SOS shortcut

New (User Only)

Auto Location Upload:

  • Background task using Expo Location
  • Uploads /location/upload every X minutes
  • Start/Stop + recent upload log

Real-time Toast Feedback:

  • Green (success), Red (error), Neutral (info) for all major actions.

🧑‍💻 Tech Stack

  • React Native (Expo)
  • React Navigation
  • AsyncStorage (for local data persistence)
  • Expo Location (live GPS tracking)
  • Linking API (WhatsApp intent)
  • News API for live articles
  • @env for secure API key management

🗂️ Folder Structure

/screens
├── HomeScreen.js
├── ContactsScreen.js
├── ArticlesScreen.js
├── ProfileScreen.js
├── LoginScreen.js
└── SignupScreen.js

/components
└── BottomTabNavigator.js

/context
└── ContactContext.js

/env
└── .env (Add your News API Key here)


🔐 Setup Instructions

  1. Clone the Repository:
git clone https://github.com/yourusername/nirbhaya-safety-app.git
cd nirbhaya-safety-app
  1. Install Dependencies:
npm install
  1. Add Environment Variables:
    Create a .env file in the root:
NEWS_API_KEY=pub_79197297a3399a45d6a710681b65584db6084
  1. Run the App:
npm start

or

expo start

Make sure WhatsApp is installed on your device for SOS messaging to work.


To build the apk


npx eas build --platform android --profndroid --profile apndroid --profile apk


🙌 Credits

  • Designed & Developed by Shaswata Saha
  • React Native
  • NewsData.io API
  • Expo

📃 License

This project is licensed under the MIT License.


💡 Future Enhancements

  • Cloud Firestore integration for user data
  • Background SOS with shake detection
  • AI-based article summarization
  • Native call/SMS fallback option

“Empower one woman, and she will empower the world.”


Backend Integration (Multi-Role)

  • Auth (sign-up / sign-in) roles: user, guardian, ngo, admin
  • User: approve tracking, upload location, SOS
  • Guardian/NGO: request access, view tracked users & latest location
  • NGO: manage doctors list
  • Endpoints used: /auth/*, /profile/me, /profile/me/(visible-to|access-to), /guardian/track-request, /user/track-requests, /location/upload, /location/latest/:id, /sos, /doctors

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors