/you-can-quit

A tool to support your progress in quitting whatever your bad habit is.

Primary LanguageVueMIT LicenseMIT

you-can-quit

release last commit license contributions welcome

This app is a tool to track your progress and encourage you on the way of quitting a bad habit. In a simple calendar view, you can set past days successful or failed. Based on this data, you can see encouraging stats about the number of days you succeeded in. Plus you can earn special achievements to reach different goals and keep you motivated on your way.

you-can-quit in short: UCQ, which also means (if you pronounce it): You Seek You. It's about you, making an impact on your own life.

This web app is based on Vue.js and Dexie.js.

ℹ This app values privacy. The data isn't meant to be synchronized between different devices, therefore local browser storage (IndexedDB) is used to store your data. However you have the possibility to export your data and import it on another browser or device.

screenshot

Features

  • 📅 Simple month and year views to see successful and failed days (and possible patterns) at one glance
  • 📈 Stats section showing current and longest streak (successful days in a row) and the total number of successful days
  • 🏆 Earn encouraging and funny achievements by reaching various goals, see progress of each achievement
  • 🌐 UI supports multiple languages (currently only English and German)
  • ⌨ Navigation with shortcuts:
    • / to go to previous/next month
    • CTRL+ / CTRL+ to go to previous/next year
    • R to reset to current month
  • 💾 Provides administration section to backup, import or clear database
  • ⚡ Made for offline usage, the data is stored only in your local browsers
  • 🔒 Values privacy - no synchronisation of data around the web

Get started

Just head over to https://youcanqu.it and start your journey.

Build it yourself

  1. Get all files

    git clone https://github.com/devmount/you-can-quit
  2. Install all dependencies using Yarn

    cd you-can-quit
    yarn
  3. Run the app by ...

    ... either run the you-can-quit/dist/index.html in your browser, e.g.

    firefox dist/index.html&

    ... or start the development server with hot reload at localhost:8080

    yarn serve

    ... or make the production build with minification yourself

    yarn build

Upgrade from 0.x to 1.x

The breaking change in version 1.x is, that the database was switched from Firebase to IndexedDB. This means, it's no longer compatible with your current data. If you rather want to migrate your data instead of starting from scratch (depends on how much days you already used this app), you can do the following:

  1. Export your Firebase data into a local .json file in the following format:

    {
      "2019-02-02": 1,
      "2019-07-25": -1,
      "2019-01-10": -1,
      "2019-11-09": 1
    }

    The order of dates doesn't matter. If you have any problems to do so, please create an issue.

  2. Update app files and dependencies

    cd you-can-quit
    git pull
    yarn
  3. Run the app (see instructions above in the Get started section) and import this data file in the administration section at the bottom.


you-can-quit is completely free to use. If you enjoy it, please consider contributing, donating via Paypal or become a sponsor for further development. 💚