Week 2

Groupwork on Browser Extension

Our group decided to create a browser extension that blocks out certain sites that typically distract students from studying, including Facebook, Reddit, and Twitter. We named our extension StudyBuddy. I had a little bit more experience with Javascript so I mostly worked on the logic that connected the UI to a store on the backend that stores the sites that have been blocked as well as the status of the extension. We have a UI and some logic and are putting the finishing touches on the extension. One problem we encountered was storing the state of the UI elements in the extension. We found out that each time the UI is opened, it’s essentially as if a new webpage is opened. So that status of all the checkboxes and buttons are not kept. We solved this by using the built in extension storage APIs to store the sites we are blocking as well as the status of the extension. Each time the UI is opened we pull the info from storage to properly update the UI elements. We anticipate that we will have a working product by the presentation date. Some things I have learned over the course of this project is how to create extensions in Firefox, how intercept and redirect web requests in Firefox, as well as using browser storage for extensions.

Written before or on February 10, 2020