rightpeter / BreakingBad

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

CS565 Final Project: Breaking Bad (Habits)

Challenge

  • Habits are routines, triggered by cues in hopes of a reward. Often, it is difficult to avoid the cue or change the routine. Our survey of personal tracking tools suggests that although they assist users in gathering data about their behaviour, very few can help users get through moments of temptation or an activity they would like to avoid without giving in.

Assumptions

  • A tracker exists that can observe the user performing the activity they want to stop.
  • This activity affects the users negatively.
  • Users are motivated to change this activity but are looking for assistance from their tools.

Solution

  • Research shows that the more people can associate with their future selves (who have to deal with the results of their current routines), the more willing individuals are to wait for future rewards. When a user is tempted by an activity they would like to avoid, we propose gently reminding them that their future self is the same current self who will have to deal with the consequences of their actions e.g. showing procrastinators their own slightly aged, tired face and a packed future calendar.

Procrastination

Process Flow

Process Flow

Scientific Impact

  • Broadening the use case & impact of PI technologies.

Broader Impact

  • Supporting individuals who want to improve their behavior.

How to Run

Environment Setup

Web App

  • Create config.js in /breaking_bad/web_app/src and format is as follows:
const config = {
    apiKey: "",
    authDomain: "",
    databaseURL: "",
    projectId: "",
    storageBucket: "",
    messagingSenderId: ""
};

export default config;
  • The credentials can be found under Project Overview - Add app - Web in your Firebase console.

  • The data we saved in firebase looks like this:

      - userId
          + config
          + ignore
          + schedule
    

Plugin

  • Create config.json in /breaking_bad/plugin and format is as follows:
{
    "apiKey": "",
    "authDomain": "",
    "databaseURL": "",
    "projectId": "",
    "storageBucket": "",
    "messagingSenderId": ""
}

  • Use the same credentials as the web app.
  • Update userId in background.js according your data in firebase

Web App

  • For first time user: Install packages with npm install in the /web_app directory
  • Run with npm run start

Plugin

  • Go to chrome://extensions/
  • Turn on the Developer Mode
  • Click Load Unpacked
  • Select /breaking_bad/plugin

Team Members

  • Lihao Lu
  • Faria Kalim
  • Yong Jin Kim

About


Languages

Language:JavaScript 89.3%Language:CSS 5.3%Language:HTML 5.3%