Skip to content

A Flutter-based mobile app for volunteering event management and rewards system

License

Notifications You must be signed in to change notification settings

derekgan08/cuzVcare-mobile-app

Repository files navigation

CAT304 Project: cuzVcare Mobile App

Problem Statements

Volunteering organizations and volunteers often struggle with managing and tracking events effectively. With disparate systems for event registration, attendance tracking, and rewards, both volunteers and organizations face numerous inefficiencies and challenges such as:

  • Low Discoveries of Event Information: There are a lot of volunteers out there who are keen on participating these activities but due to there is no specific platform to host all these information at the same platform to ease discovery, many of them are not aware that these activities are going on.

  • Activities Signups and Participations: Participants who are interested in taking part in the activities will sometimes forget the activity, date, time or the venue due to forgetful. Some of them who have signed up for the activity but are absent due to various reasons, which will result in the number of participants who have signed up is lesser than the number of participants who are actually turning up in the activities.

  • Difficulties in Conveying Messages: In the event of unexpected issues such as rain, inevitable postponement of activities, change of activities details etc., announcements or updates such as the new date and time are difficult to convey to all the participants. Hence, a lot of them are not aware of the latest arrangements. Even if we can use phone calling to notify them one by one, it will be tedious if many participants is involved.

  • Activity Records Management: Mostly, all the activity records are either incomplete or not well documented. Even if the records are complete, they are not shared with others. This results in future activities do not having enough references and difficult to find solutions when necessary.

  • Lack of Awareness and Motivation in Event Participation: Even if some people have discovered the activity, there are very less of them who would like to join because they think these activities are wasting time. Some of them might feel that the event information provided is not attractive enough to motivate them to participate.  

  • Vulnerability of Sensitive Information: Most of the time, the organizers will collect the information of participants when they sign up for an activity. The information is not guaranteed to be safe and is at the risk of being stolen or exposed.

  • Lack of interaction platform: The difficulty in coordinating and communicating effectively among volunteers due to a lack of a dedicated online platform for managing and organizing volunteer efforts.

Project Overview

Unsustainable cities and human settlements is one of the major issue in the current world and is particularly severe in poor countries. In around the world, pollutions, waste management, and natural disasters are prevalent issues and actions must be taken to mitigate it. However, volunteering activities, as one of the most effective mitigating methods, is lacking and not carried out profusely. One of the main reasons is because there is no focused, organized, secure and trustworthy communication hub to host volunteering activity information. We aim to reduce these issues by engineering a volunteer recruitment platform named “cuzVcare”. The platform aims to host all the event information on the same platform while motivate users in participating events, allow users to discover and sign up for the events they would like to join as well as enable the users to keep track the events they have signed up and bookmark the events they are interested to join.

cuzVcare is designed to streamline the management and participation of volunteering events developed as a mobile application which can be run on Android and iOS Operating Systems as mobile application has the highest volume of users in the current trend. This application can be used by anyone from any part of the world in order to create a more sustainable cities and human settlements as aligned with Sustainable Development Goals (SDG) 11.

The app serves as an efficient tool to encourage volunteering, making it easier for users to engage with local events and be rewarded for their contributions.

Key Features

  • Event Submission: Organisers can submit their event details to be featured on the platform.
  • Event Tracking: Users can track past volunteering events and view submission statuses (Pending/Approved/Rejected).
  • Event Signup: Volunteers can register for events and check-in to track their attendance.
  • GPS Filtering: Volunteers can find nearby events based on their location.
  • Rewards Redemption: Volunteers can redeem their earned points for rewards from partnered organizations.
  • Chat and Notifications: Seamless communication through notifications and chat for event updates and reminders.

Technologies Used

  • Flutter: Cross-platform mobile application framework for building iOS and Android apps.
  • Firebase: Backend-as-a-service solution for user authentication, data storage, and notifications.
  • Dart: The programming language used for developing the app.
  • Figma: Design tool used for creating the app's user interface and user experience designs.
  • Android Studio: Integrated development environment (IDE) used for Flutter development and testing on Android devices.

Installation

This project is not open for public cloning or redistribution without prior written permission from the author as stated in LICENSE.md. If you would like to access this project, please reach out to the repository owner to request permission.

Once written permission is granted, you will receive detailed instructions on how to install and run the system, including all necessary steps and dependencies.

Usage

Similar to the installation process, usage instructions will be provided only after written permission is granted to access this repository. Upon receiving access, you will be provided with step-by-step instructions on how to use this system/application, including on how to run the program, interact with it and exploring all the key features stated.

Screenshots

  1. Onboarding Screen:

    onboarding screen
    Figure 1: Onboarding Screen

  2. Sign Up Screen:

    sign up screen
    Figure 2: Sign Up Screen

  3. Log In Screen:

    log in screen
    Figure 3: Log In Screen

  4. Create Profile Screen:

    create profile screen
    Figure 4: Create Profile Screen

  5. Home Page Screen:

    home page screen
    Figure 5: Home Page Screen

  6. View Event Detail:

    view event detail
    Figure 6: View Event Detail

  7. View Event Ticket:

    view event ticket
    Figure 7: View Event Ticket

  8. View Joined Events:

    view joined events
    Figure 8: View Joined Events

  9. View Bookmarked Events:

    view bookmarked events
    Figure 9: View Bookmarked Events

  10. View All Rewards:

    view all rewards
    Figure 10: View All Rewards

  11. View Redeemed Rewards:

    view redeemed rewards
    Figure 11: View Redeemed Rewards

  12. Create Event Form Part 1:

    create event form part 1
    Figure 12: Create Event Form Part 1

  13. Create Event Form Part 2:

    create event form part 2
    Figure 13: Create Event Form Part 2

  14. View All Chat Messages:

    view all chat messages
    Figure 14: View All Chat Messages

  15. Send and Receive Messages:

    send and receive messages
    Figure 15: Send and Receive Messages

  16. View User Profile:

    view user profile
    Figure 16: View User Profile

  17. Edit User Profile:

    edit user profile
    Figure 17: Edit User Profile

  18. View Notification:

    view notification
    Figure 18: View Notification

  19. Side Drawer Menu Screen:

    side drawer menu screen
    Figure 19: Side Drawer Menu Screen

  20. About Us Screen:

    about us screen
    Figure 20: About Us Screen

  21. Log Out Screen:

    log out screen
    Figure 21: Log Out Screen