Giter VIP home page Giter VIP logo

habit-tracker's Introduction

Habitude

Live site

The simple way to build habits that last.

Installation & Usage

Installation

  • Clone or download the repository.
  • Open terminal and navigate to habit-tracker folder (repository root directory)
  • For the server and database dev environments run bash _script/startDev.sh
  • Navigate to client folder and run npm install to install dependencies for the client

Usage

  • Open terminal and navigate to client folder and run npm run dev
  • In the browser, go to http://localhost:8080/ for the client.
  • To make requests directly to the server, use api root http://localhost:3000/

Teardown

  • Open Terminal and navigate to the repository root directory
  • To stop the containers run bash _script/stop.sh
  • For a complete teardown run bash _script/teardown.sh

Installation & Usage

Installation

  • Clone or download the repo
  • Open terminal and navigate to habit-tracker folder
  • Navigate to the server folder and run npm install to install dependencies
  • Navigate to the client folder and run npm install to install dependencies

Usage - provided scripts and intended use

bash _scripts/startDev.sh

  • starts server & db services
  • runs db migrations
  • seeds db for development
  • serves to localhost:3000

bash _scripts/startTest.sh

  • starts server & db services
  • runs db migrations
  • triggers full test run

bash _scripts/teardown.sh

  • stop all running services
  • removes containers
  • removes volumes

Do not run both dev and test environment at the same time!

Technologies

Client
Server
Database

API endpoints

Route name Path Method Purpose
create /auth/register POST Register a new account
update /auth/login POST Login to an account
update /auth/:email/password PATCH Update account password
show /user/:email GET Get user info
update /user/:email PATCH/PUT Update user name
show /user/:email/habit GET Get all users' habits
create /user/:email/habit/ POST Add a new habit
show /user/:email/habit/:id GET Get a single habit by id
destroy /user/:email/habit/:id DELETE Delete a single habit by id
create /user/:email/habit/:id/complete POST Add a habit completion instance
destroy /user/:email/habit/:id/complete/:completionId DELETE Delete a habit completion instance

Changelog

changelog

Bugs

  • Does not authenticate user token ownership

Future Features

  • Leaderboards
  • More habit infographics
  • Edit existing habits

habit-tracker's People

Contributors

velocima avatar thomasvirgo avatar deb0890 avatar poligera avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.