Skip to content

CMPUT301W24T22/QR-Dasher

Repository files navigation

QR Dasher

Overview 📱

QR Dasher is an Android application designed for seamless event check-ins using QR codes and geolocation-based attendance verification. It provides features to create profiles, organize events, and ensure accurate attendance tracking. To enhance the user experience, the app includes real-time notifications and an interactive leaderboard.

Features ✨

  • QR Code Check-ins:
    • Scan QR codes for quick and secure event check-ins.
  • Geolocation-Based Verification:
    • Ensure attendees are physically present at the event location.
  • Profile Creation:
    • Allow users to create and manage their profiles.
  • Event Organization:
    • Enable event hosts to create, manage, and track events.
  • Real-time Notifications:
    • Notify attendees about event updates and check-in status.
  • Interactive Leaderboard:
    • Foster engagement with a leaderboard displaying attendee activity.

Technical Details 🛠️

  • Platform: Android (Java/Kotlin).
  • Technologies Used:
    • Firebase: For real-time notifications and database management.
    • Google Maps API: For geolocation-based attendance verification.
    • ZXing Library: For QR code scanning.
  • Architecture: Follows the MVVM (Model-View-ViewModel) pattern for better code organization and scalability.

How to Build and Run 🚀

  1. Clone the Repository:
    git clone https://github.com/yourusername/qr-dasher.git
  2. Set Up Firebase:
    • Download the google-services.json file from your Firebase console and place it in the app/ directory.
  3. Set Up API Keys:
    • Add your Google Maps API Key in the local.properties file:
      MAPS_API_KEY=your_api_key
      
  4. Build and Run:
    • Open the project in Android Studio.
    • Sync Gradle and build the project.
    • Run the app on an Android emulator or physical device.

Usage 🎯

  1. Create a Profile:
    • Sign up or log in to create and manage your user profile.
  2. Organize Events:
    • Use the event management feature to set up events and generate QR codes for check-ins.
  3. Check-In:
    • Scan QR codes at the event location. Geolocation will verify your presence.
  4. Notifications:
    • Receive updates about events and check-in statuses.
  5. Leaderboard:
    • Compete with others by earning points for event participation.

Future Enhancements 💡

  • Add support for NFC-based check-ins as an alternative to QR codes.
  • Implement analytics for event organizers to track attendance trends.
  • Introduce gamification elements to further boost user engagement.

Contributors 👩‍💻

📜 License

This project is licensed under the MIT License.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published