As a college student, it's way too tempting to just check FaceBook or Twitter while stuck on a math problem or suffering from writter's block. Unlike a few other productivity apps, this app does not totally shut you out of these distracting websites. It sets a timer for how long you can spend on these websites during a period of time, so you can still relax a bit, but still focus on getting your work done. This is convenient for students who have 30 minute to 2 hour chunks of time in between their classes, which they usually completely waste on their phones or various websites. This extension will make sure that users get their work done, with a funny twist at the end!

What it does

Study Buddy allows users to set a timer for the chunk of studying time they have. This timer will always run in the background. Users also input the amount of time they want to allocate towards spending time on a list of blacklisted websites that they create as well. This "chill" timer runs whenever the user is on a blacklisted website. If this timer reaches zero and the user is still on the website, that tab closes and a new tab with an angry gif pops up that says "Get back to work!" On the other hand, when the study timer reaches zero, a new tab with a celebratory gif pops up, and then the users are free to go on their blacklisted websites again.

How we built it

We started off with making a main interface that contained input boxes for "study time," "chill time," and "blacklist." From there, we made more windows for the web extension and made a timer to run in the background. We worked on storing inputs from the user and then worked on creating the firebase for the blacklist and time inputs and then worked on storing inputs into cookies.

Challenges we ran into

  • Keeping the timer running continuously, since the chrome extension closes and resets every time we change tabs or click out of the extension
  • Finding a way to store inputted variables, since we had trouble with firebase, chrome's local storage, and cookies
  • Detecting when the user is on a blacklisted website, and finding out how to close the tab

Accomplishments that we're proud of

  • The overall interface of the web extension
  • Our perserverance in making everything from stratch and solving countless problems
  • Learning more about web extensions, JavaScript, Firebase, data storage
  • Getting through our first hackathon as new and inexperienced computer science students, especially since one of our team mates fell victim to our campus's current plague
  • Coding a semi-successful project and collaborating as a team with no/minimal sleep for 24 hours
  • The funny gifs :)

What we learned

Chrome web extensions, more about JavaScript, Firebase databases, storing inputs, cookies, local storage, HTML/CSS

What's next for Study Buddy

  • Finishing its functionality: still needs to compare the Firebase data to the current tab in order to close blacklisted tabs
  • Fix the "chill" timer and have it deplete as users waste time on those websites
  • New feature: collect data on how much time the user spends on each blacklisted website, display as a separate tab within the web extension
Share this project: