Schedule Share

Project Info

This is the Shared Schedule project, developed as a team of 3 for QHacks 2021. The idea of the project is a website that generates a weekly schedule, which can be accessed by others and see the same information. A user would input their name and then fill in which time slots of the week they are busy/available. The website updates the database synchronously, so all other users of the website will be able to see the same schedule that everyone else fills out.

Idea Generation

The idea for this project came up when one of our team members wanted to have a shared schedule between his housemates so that people will know when to be quiet. The problem being solved with this application is having tests/exams for online school, but other people in your house are being loud because they didn't know of the test/exam. With this website, all of the housemates will be able to visit the same site, and each fills in when they want quiet times. This solves the problem without having to write out a schedule on a whiteboard, or go through more complicated steps with a shared calendar app like Google Calendar.

Development Details

The website itself is written in HTML, CSS, and Javascript with the use of JSON files and Google Cloud Services. The website is hosted on Firebase, which is part of Google cloud, and the website also utilizes Firebase's real-time database to complete the backend. None of the team members have had experience working with databases before, so planning out the structure and implementing the database to connect with the website was new for all of us, and a fun learning experience. After completing this project, the team realized that using Google Cloud services for small applications like ours proved to be much easier and more friendly than Amazon Web Services, which was the platform we used in a previous web-based project. Lastly, we used and registered a custom domain for our website (, and learned about DNS names during the process of adding the domain to our Firebase project.

Next Steps

As we were developing this application, we started seeing more and more of how our website can be very useful to everyone, and can be used to check a team's availability rather than limited to letting people know when to be quiet. Given the short timeframe of a hackathon, we were only able to get a minimum viable product out, and were unable to implement a lot of features that we wanted to. As a result, our team will keep pursuing the development of the website, so that we can bring it into the lives of people as a tool to help with team-based organization. The next steps that we would take with the website is to customize the aesthetics more, and we will most likely be installing the Bootstrap 4 library to give a modern, minimalistic and clean look to the site. Additionally, we would like to implement more advanced features such as having multiple people be able to select the same cell, as currently each cell can only contain one person's name. Lastly, to be able to fully publish the website so everyone can use it, we would need to be able to generate unique schedule links to each person who creates a schedule, so that only people with access to the link can input and make changes to the schedule.

Team members' discord usernames:

Discord team #53
Lawrence Luo - SavageCabbage#6672
Erick Flores - Birb#7268
Samuel Ngai - samueln#1363

Share this project: