We were baffled by the idea that millions of people every day waste copious periods of time scrolling through social media websites or web-apps, along with any other website that is not conducive to their progress at work, regardless of the task at hand!

Based on neuroscience and psychology research surrounding the "task switch cost" our brain goes through while multitasking, or simply the counterproductive effects of focusing on multiple things at once and diminishing productivity, we aim to address this issue by incentivizing users to hold themselves accountable for a certain period of time, in order to complete the task at hand.

Not only is this helpful for productivity, but research also shows that reducing context switching leads to a strong improvement in mental health.

What it does

It's a nifty Chrome extension that gamifies focus sessions. Essentially whenever you want to focus, you start a session on the extension, nominate a partner and put some money at stake, and there's your incentive to focus!

In more detail - this chrome extension essentially prompts the you to start a focus session when initiated, indicating to the user that their time period to complete a task has started. You can set a time goal in advance in terms of the minutes intended to allocate to the session (default at 30, 45, 60, and 75). Then, you can nominate any friend that you have chosen to be an accountability partner to essentially hold you accountable by potentially gaining money from you if you do end the session before time! If at any point you feel like stopping, the gamified and bright nature of the extension will warn you not to do so, but you can still exit the session if need be but lose the accountable money.

If you do decide to switch tabs to another website that is not pertaining to work, it will redirect you to another page and automatically end the particular session. You can set the websites you don't want to run into while you work in advance, such as Facebook, Instagram, Twitter, or any URL really!

How we built it

First off, we started by tackling the Chrome extension - we built this in Javascript, and the complexity of our app posed a lot of challenges for us. We had to have an active timer, a way to authenticate the user, a way to nominate a friend as an accountability partner, and a lot more.

Considering the auth and the social accountability aspect of things, we decided to use Django for our backend. Further, we used Django REST Framework to integrate this with our Chrome extension, so the user can login to the extension easily.

Finally, we then built a web application using Django that serves as a way for user to set additional settings, add friends etc.

Challenges we ran into

  • The biggest challenge that we had to tackle was to build authentication with our chrome extension. This is a mostly unsolved problems and very few extensions do it, which made our case particularly hard.
  • Another challenge we had was in setting up our backend infrastructure. We used Django, and Auth0 for this.
  • Allowing the user to be able to nominate an accountability partner meant we had to add a social aspect to our app. We built the ability to add friends from group up.
  • Allowing the user to be able to pre-determine their desired avoidable websites added another complexity.

Accomplishments that we're proud of

Building an entire web application that is synchronous with the Chrome extension - including login, authentication, sessions, and user flows.

We used Chrome's local storage to store the state of our countdown and we used Django REST Framework for using our API endpoints from our Chrome extension - both of these are relatively new, which meant that we learnt a lot using them!

What we learned

There's nothing that you can't build overnight if you have the dedication to do so!

But honestly, we learnt so much about Chrome extensions, how user sessions work across the web, how to design big systems from scratch, DB migrations in Django and a lot more.

What's next for ReWire

We become a unicorn! No seriously, we think that the problem of social media addiction is a major mental health problem for most people today, and if our app can do even slightest to reduce it - we would be successful as a team.


Share this project: