Are You Taking

It's the anti-scheduling app. 'Are You Taking' is the no-nonsense way to figure out if you have class with your friends by comparing your course schedules with ease. No more screenshots, only good vibes!

Inspiration

The fall semester is approaching... too quickly. And we don't want to have to be in class by ourselves.

Every year, we do the same routine of sending screenshots to our peers of what we're taking that term. It's tedious, and every time you change courses, you have to resend a picture. It also doesn't scale well to groups of people trying to find all of the different overlaps.

So, we built a fix. Introducing "Are You Taking" (AYT), an app that allows users to upload their calendars and find event overlap.

It works very similar to scheduling apps like when2meet, except with the goal of finding where there is conflict, instead of where there isn't.

What it does

The flow goes as follows:

  1. Users upload their calendar, and get a custom URL like https://areyoutaking.tech/calendar/<uuidv4>
  2. They can then send that URL wherever it suits them most
  3. Other users may then upload their own calendars
  4. The link stays alive so users can go back to see who has class with who

How we built it

We leveraged React on the front-end, along with Next, Sass, React-Big-Calendar and Bootstrap.

For the back-end, we used Python with Flask. We also used CockroachDB for storing events and handled deployment using Google Cloud Run (GCR) on GCP. We were able to create Dockerfiles for both our front-end and back-end separately and likewise deploy them each to a separate GCR instance.

Challenges we ran into

There were two major challenges we faced in development.

The first was modelling relationships between the various entities involved in our application. From one-to-one, to one-to-many, to many-to-many, we had to write effective schemas to ensure we could render data efficiently.

The second was connecting our front-end code to our back-end code; we waited perhaps a bit too long to pair them together and really felt a time crunch as the deadline approached.

Accomplishments that we're proud of

We managed to cover a lot of new ground!

  • Being able to effectively render calendar events
  • Being able to handle file uploads and store event data
  • Deploying the application on GCP using GCR
  • Capturing various relationships with database schemas and SQL

What we learned

We used each of these technologies for the first time:

  • Next
  • CockroachDB
  • Google Cloud Run

What's next for Are You Taking (AYT)

There's a few major features we'd like to add!

  • Support for direct Google Calendar links, Apple Calendar links, Outlook links
  • Edit the calendar so you don't have to re-upload the file
  • Integrations with common platforms: Messenger, Discord, email, Slack
  • Simple passwords for calendars and users
  • Render a 'generic week' as the calendar, instead of specific dates

Built With

Share this project:

Updates