RallyNow is a mobile application designed to support individuals participating in protests by keeping them informed, safe, and connected. The app serves as a comprehensive tool for activists, protesters, and organizers, especially in situations where internet connectivity might be compromised, or when immediate access to emergency services and information is critical. The application was built using React Native for the frontend and Firebase for the backend, ensuring a smooth, reliable, and responsive user experience across different platforms.
Key Features:
Login and Authentication:
User Authentication: Upon launching RallyNow, users are greeted with a login page where they can securely enter their credentials to access the app’s features. This ensures that user data and activities within the app are protected and private.
Protests Near You:
Real-time Updates: Users can view a list of protests happening nearby, complete with details such as time, location, and causes being advocated.
Engagement: The app allows users to upvote protests they support and even post information about new protests, fostering community engagement and ensuring that everyone stays informed about the latest events.
Latest Incidents:
Incident Reporting: This feature allows users to both give and receive updates on critical incidents, such as police interventions or sudden changes in protest plans. It is an essential tool for real-time communication, especially in situations where immediate awareness can prevent harm or escalation.
Safety Features:
SOS Button: A prominently placed SOS button on the main screen allows users to instantly notify first responders in case of an emergency. This feature is crucial for ensuring quick help during potentially dangerous situations.
Emergency Contacts: The app includes a ‘Services’ page where users can access a list of emergency contacts, ensuring that help is always within reach.
Emergency Aid: The ‘Emergency Aid’ page provides step-by-step first aid instructions, empowering users to administer crucial assistance before professional help arrives.
Medical ID: Users can store important personal health information in the ‘Medical ID’ page, making it accessible to first responders during emergencies.
Community Resources:
Support Networks: The ‘Community’ page connects users to donation services and other resources that support the protest causes, enhancing the impact of their activism.
Low-Connectivity Communication and Offline Functionality:
Offline and Low-Connectivity Communication: RallyNow is equipped with advanced low-connectivity communication tools to ensure users stay connected even in challenging environments. The app uses WiFi Direct and Bluetooth technologies to facilitate peer-to-peer communication without relying on cellular networks. This feature is particularly crucial during protests where internet access may be restricted or entirely unavailable.
Connectivity Indicator: An indicator in the top right corner of the screen displays the user’s current internet status. Even in scenarios where the connection is weak or restricted, the app ensures that critical updates can still be sent and received using these alternative communication methods. This ensures that users remain informed and can coordinate effectively, regardless of the connectivity challenges they may face.
Technology Stack:
Frontend: React Native was chosen for its ability to provide a seamless, cross-platform user experience, ensuring that the app runs efficiently on both Android and iOS devices.
Backend: Firebase serves as the backend, offering real-time data synchronization, authentication services, and robust database management, all of which contribute to the app’s reliability and speed.
Communication Protocols: WiFi Direct and Bluetooth are integrated to support offline communication, ensuring the app’s functionality even in low or no connectivity environments.
Growth:
As we continue to develop and enhance RallyNow, a key area of focus is the further implementation of Low-Network Usability features. Our goal is to expand the app's ability to maintain essential functionalities even in extremely limited connectivity environments. This includes optimizing data caching, improving offline access to critical features such as emergency contacts and medical IDs, and ensuring that users can still receive timely updates on protests and incidents whenever possible. By prioritizing these enhancements, we aim to make RallyNow an even more reliable tool for communities in all connectivity scenarios.
RallyNow is more than just an app—it’s a lifeline for protesters and activists. By combining real-time information, safety tools, and robust communication features—including WiFi Direct and Bluetooth support for low-connectivity scenarios—RallyNow ensures that users remain informed, safe, and connected, no matter what challenges they face on the ground. Whether dealing with low connectivity or navigating high-stakes situations, RallyNow is designed to be an indispensable tool in the fight for justice and change.
Contributions: Muqueet: Full-Stack Farhan: Front-End Oydan: Front-End Munawar: Full-Stack
Technologies Used
Languages:
- JavaScript
- TypeScript
- React Native (for cross-platform mobile app development)
Frameworks:
- React Native (for building the mobile app)
- Expo (for quick prototyping and testing)
Platforms:
- Android
- iOS
Cloud Services:
- Firebase (for backend services, including authentication, real-time database, and cloud storage)
- Firebase Firestore (for managing real-time data updates)
- Firebase Authentication (for user sign-in and authentication)
Databases:
- Firestore (NoSQL cloud database for storing and syncing data in real-time)
APIs:
- Firebase API (for interacting with Firestore, Authentication, and other Firebase services)
Other Technologies:
- Bluetooth and Wi-Fi Direct (planned for future integration to enable communication in limited internet situations)
- Expo Push Notifications (for sending alerts and updates to users)

Log in or sign up for Devpost to join the conversation.