Inspiration
We, like many other students, find that the internet can be distracting especially when schoolwork needs to be done. We decided that creating a Chrome extension that would block distracting websites and keep track of to-dos would allow us to be more productive during the school day.
What it does
Our extension allows users to create a list of tasks that they want to complete as well as a list of URLs that they want to avoid for productivity. As long as a user still has items on their to-do list, they will not be able to visit websites on their block list. Once a user has completed all their tasks, they are allowed to visit their websites until they add more to-do tasks.
How we built it
We built our extension using Javascript, HTML, and CSS. We used the Chrome API to control the blocking features as well as the storage for the to-do and blocklists.
Challenges we ran into
We had trouble keeping items on the to-do list through the local chrome storage. We fixed this by initializing the data only when the extension was installed and not every time it was opened.
Accomplishments that we're proud of
We are proud that we created a browser extension. Both of us had no experience with extensions before this hackathon but were able to learn throughout the event. We are also proud that we were able to complete the widget mostly from scratch and feel like we thoroughly understand all the code in our project.
What we learned
We learned a lot about asynchronous functions in javascript and how to work around problems with variables not abiding by async functions. We also learned a lot of basic CSS/flexbox, and React which we used during the development/idea stage of our project.
What's next for Web Blocker
We want blocked websites to update in real-time so that users that are on a blocked page will be redirected instantly if they add an item to their to-do list. We would also like to add an off toggle so that users don't have to clear their entire list if they need to reach a certain blocked website urgently. Finally, we want to get our extension approved to be on the Google Play Extention Store.
Log in or sign up for Devpost to join the conversation.