Inspiration
We were primarily inspired by a little free "game" called Virtual Cottage. Though it was categorized as a game, it was more of an artistic to-do list. In Virtual Cottage, you type what you want to accomplish and set a timer. Relaxing music plays in the background along with an assortment of white noise options. And a cute little cottage interior is shown on screen.
Of course, not everyone has monitor space for such an application, no matter how relaxing and meditative it may be. So we decided to take their philosophy and port it over to a Chrome extension.
What it does
Our Chrome extension blocks websites and plays lo-fi music on a timer that can be set but not stopped by the user.
How we built it
We built our project by dividing up the features and working on them separately. But we made sure to ask for help when debugging, reviewing code, or thinking through logic. Since we were online, we called each other on Discord and stayed in the call for the whole entire day. That way, we could verbally communicate with each other which help us tremendously. And of course, YouTube tutorials and blog posts on Chrome extensions and JavaScript were there to save the day.
Challenges we ran into
Our biggest challenge was implementing the features of our extension so that it would run in the background while the extension window wasn't active. While it might seem like a trivial problem, it was a nightmare to code because of seemingly random restrictions placed on extension scripts and the necessity to pass around tons of events due to the animations and audio in our extension. Learning about, coding, and debugging "background scripts" took a majority of our time.
Accomplishments that we're proud of
The accomplishment we're the proudest of is being able to get so far with limited experience and knowledge. In our team of four, only two of us have participated in a hackathon before. None of us have seriously learned HTML, CSS, or JavaScript in an academic setting, and none of us had ever developed in Chrome before. But despite all of our shortcomings, we were able to help one another and learn as we worked.
What we learned
For the most part, we learned a lot about JavaScript and event-based programs/coding. We also learned how to use GitHub for collaborating on projects with multiple contributors.
What's next for Umbilicus
While managed to implement all of our core features, we weren't able to work much on any of our reach features (features we would've worked on if we had more time). So the next logical step would be to implement those. All of our goals can be found in the README.md in the GitHub. Additionally, the Manifest V2 platform for Chrome extensions is soon to be deprecated in 2023, so porting our extension over to Manifest V3 would be a must.
Log in or sign up for Devpost to join the conversation.