Description as a Tweet:

Tired of struggling through classes alone? PullUp allows you to see and locate study groups so that you can study with other people as well as collaborate on assignments (and make some new friends in the process!)

Inspiration:

Unfortunately, quarantine forced most students into isolation both physically and socially causing a loss of the feeling of community. One of the most difficult things that my team and I had experienced when coming back to campus was integrating back into our previous social selves and making new connections in our classes. Due to this extended period of isolation, it can be scary to ask people if they’d like to study or collaborate with you on class material. So, we decided to make an app that makes the process of finding study groups and friends in classes, quick, convenient, and anxiety free.

What it does:

PullUp allows UMass students to find and create public study group sessions for the classes that they're in. The user flow is as follows.

First, start by selecting the classes that you're currently enrolled in, in the Course Search tab. You can do this by simply tapping on the names of the courses that you're enrolled in. From here, you can do two things:
1. Go to the map tab. You will be able to see all of the existing study group sessions for your classes in both a list view and a map view. Tap on a session that you'd like to join in the list view, and the map view will automatically zoom to the location of the session. You can now physically make your way over to the session and join those already working!
2. Go to the map tab. If there aren't any sessions that interest you, you can create your own. Simply click on the plus button in the top right and fill out the form to create your session. Make sure you specify specific location info like floor number, as well as info like what class you're working on, what assignment, and when you'll be leaving. Now you can wait for people to join you!

How we built it:

This project is a native iOS application. It was built in Xcode using Swift 5 and with mostly built in APIs (including UIKit and MapKit). We also used Google Cloud’s Firebase Realtime Database in order to sync location, course, and user data across different devices.

Technologies we used:

  • Swift

Challenges we ran into:

Our group had never really worked with synchronization across multiple devices with an iOS application before, so we found it tedious and time consuming to mess around with database services. We started with MongoDB’s Realm Sync, but later switched to Google Cloud’s Realtime Database since the interface was much more user friendly and comprehensible.

Accomplishments we're proud of:

The main accomplishment that we're most proud of is getting our app to run! All jokes aside, we all agree that this is an app that we would definitely use and find helpful, so our biggest accomplishment was building something that is useful and impactful. We also gained experience working with Google Cloud's Realtime Database which is an accomplishment because we'll be sure to use it again in future projects.

What we've learned:

We learned a lot about teamwork/collaboration as well as the software development process. In terms of the more technical things, we learned how to use Apple's MapKit, as well as Google Cloud's Realtime Database

What's next:

What's next for your project?
1. A chat feature that allows people who want to join study sessions to chat with those who’ve created them (makes it easier to locate study groups in specific areas)
2. Established study groups - can establish a study group of users, and whenever one user is studying in a location, PullUp will send a push notification to all members of the group telling them to pull up.
3. Capacity feature - keep track of how many people are in the study group so that groups don’t become too big/overwhelming and unsafe (covid)
4. E-study groups - study groups on Zoom for covid safety as well as convenience
5. Authentication - verify that users are UMass students.
6. A more user experience and interface.
7. Bug Fixes, efficiency improvements (with reading and writing data)
8. Non-course related (general) study groups to meet people outside of your major

Built with:

I wrote the code for this project on my MacBook with Xcode. I used my own iPhone to test/run the code.

Prizes we're going for:

  • Best Software Hack
  • Best Mobile Hack
  • Best Use of Google Cloud

Prizes Won

Best Mobile Hack
Best Use of Google Cloud

Team Members

Charles Zhang
Ezra Savitz
Vikram Singh
Pawan Sarma

Table Number

Table 29