Guardia is a real-time location tracking platform designed to enhance emergency response capabilities for כיתות כוננות (emergency response teams). The system allows for seamless coordination between field personnel and command centers, ensuring swift and informed decision-making during critical situations.
Guardia secured 3rd place at the LevTech GreatMinds 8 Hackathon, showcasing its innovative approach to emergency response management.
Ensure you have the following installed:
npm install -g typescript
Clone the repository:
git clone https://github.com/benkleintechnologies/Guardia.git
cd Guardia
Install dependencies:
For web app:
cd web
npm install
For mobile app:
cd mobile
npm install
Set up Firebase:
Copy the Firebase config and create .env
files for both the web and mobile apps:
Web .env
:
REACT_APP_API_KEY=your_firebase_api_key
REACT_APP_AUTH_DOMAIN=your_project.firebaseapp.com
REACT_APP_PROJECT_ID=your_project_id
Mobile .env
:
FIREBASE_API_KEY=your_firebase_api_key
FIREBASE_AUTH_DOMAIN=your_project.firebaseapp.com
FIREBASE_PROJECT_ID=your_project_id
Run the apps:
Web App:
npm start
Mobile App:
npx expo start
iOS Mobile App: If you're using macOS and have Xcode installed, you can run the iOS app using:
npx react-native run-ios
Configuration is done via .env
files for both the web and mobile apps. Ensure that Firebase API keys, project IDs, and other sensitive credentials are added correctly.
To deploy the web app to Firebase Hosting, use the Firebase CLI:
firebase login
firebase init
firebase deploy
Run the Web App:
Visit http://localhost:3000
to access the command center interface.
Run the Mobile App: Use the Expo Go app on your phone or a mobile emulator to test the mobile interface.
Monitoring Locations:
After installing iOS Pods, certain files may cause build issues. If you encounter errors, follow the steps below:
Navigate to the following file:
mobile/ios/Pods/Headers/Public/ReactCommon/ReactCommon.modulemap
Comment out the following lines:
//module ReactCommon {
// umbrella header "ReactCommon-umbrella.h"
// exclude header "React-RuntimeApple-umbrella.h"
// export *
// module * { export * }
//}
In the file:
mobile/ios/Pods/Headers/Public/ReactCommon/React-RuntimeApple.modulemap
Modify it to include:
module ReactCommon {
umbrella header "React-RuntimeApple-umbrella.h"
exclude header "ReactCommon-umbrella.h"
export *
module * { export * }
}
This project is licensed under the MIT License. See the LICENSE file for more details.
Guardia revolutionizes emergency response management by providing real-time situational awareness. Its seamless combination of mobile and web applications makes it an ideal solution for quick decision-making in critical situations.