PAGER is a social app for ravers to connect and share experiences. The app allows users to join groups, discover upcoming events, make new friends, and chat with fellow ravers. With PAGER, you can easily find like-minded people to attend events with, join groups based on your music preferences, and even plan your own events.
I collaborated with 6 other engineers created this app from conception to implementation, testing and deployment.
My main responsibilities in this project includes
- Creation backend API services which supports 70% of platform's feature includes Homepage Module, All Group Module and Individual Group Module
- UI Design + Improvement
- Creation of detailed API documentation for frontend modules
- Implementation of data binding and filter for Homepage Module
- Tech lead for technical decision making and daily debugging
- Our team decided to use Firebase as it offered a wide variety of services for our product that can be easily integrated in our application such as real-time databases using Firestore, login and register account pages using Firebase Authentication , Real-time chat messages using Cloud Messaging and the ability to upload photos using Cloud Storage.
- Utilized Firebase Authentication for user sign in and sign up
- Managed authentication screen stack flow for global state for authenticated users
- Sign up user and corresponding data points in Firebase Firestore with information and profile image
- Main page showing the details of the signed-in user
- Expanded view of friends and music tastes
- Edit page to edit music tastes and description
- Swipe cards displaying groups attending events. Swipe right to join or left to pass.
- Card expanded view, showing additional information about the group.
- Filter cards based on size and vibe.
- Tabular design to view a user’s upcoming and attended groups
- Tab for user to create their own group and upload group images
- Overview of group details with members and brief schedule
- Full schedule list where owner has the ability to add/delete plans
- Each group has their own chatroom to discuss plans for their event within their group
This is an overview of the API services I created to support Homepage, All Groups and Individual Group Module
-
getGroupsPerEvent(event_id)
-
getPendingRequestPerGroup(group_id)
-
getGroupsPerUser(user_id)
-
getGroupsAttendedPerUser(user_id)
-
getGroupsUpcomingPerUser(user_id)
-
getGroupMembers(group_id)
-
createGroup(formdata, organizer_id)
-
sendRequestToGroup(user_id, group_id)
-
invitePeopleToGroup(user_id, group_id)
-
getChatMsgsPerGroup(group_id)
-
addChatMsg(formdata)
-
acceptInGroup(user_id, group_id)
-
getGroupPlans(group_id)
-
addPlan(group_id, form_data)
-
deletePlan(group_id, plan_id)
To build and install all the dependencies
npm install
To start
expo start
Frontend
- React Native
- Redux
- JavaScript
Backend
- Firebase
- Authentication
- Firestore
- Cloud Messaging
- Cloud Storage
- Abigail Li @palmigloo
- Simon Buret de Longagne @SimonBdeL
- Andrew Heim @andepants
- Madeline King @maddieking02
- Charlie Um @charlieum
- Joshua Vilela @joshuavilela
- Jeffrey Zhang @Jeffreyzhangsd