GithubHelp home page GithubHelp logo

mcdecke / bicyclehealth Goto Github PK

View Code? Open in Web Editor NEW

This project forked from tanyapanich/bicyclehealth

0.0 2.0 0.0 3.51 MB

Keep your bicycle healthy!

License: MIT License

JavaScript 84.23% CSS 2.76% HTML 0.20% Procfile 0.01% EJS 12.81%

bicyclehealth's Introduction

Bicycle Health

Keep your bicycle healthy!

The app is deployed at https://bicycle-health-check.herokuapp.com/

The User Stories for the app are at https://trello.com/b/V2FaCV20

Project Document

  1. User Stories
  2. Agreements
  3. Wireframes

ERD

ERD

User Workflows

Sign Up

  1. Check to see if there is any user saved in Local Storage. If there is no user saved, continue with the Sign Up process. If there is a user saved, continue with the Login process below.
  2. When signing up with Strava
    1. Display Login for Strava
    2. After a successful login to Strava, the account information is returned
    3. Create a record in users table
    4. When saving access_token, make sure to encrypt the data with SECRET_KEY
    5. The access_type in users table will be set to 'strava'
  3. When signing up without Strava
    1. Prompt to enter First Name, Last Name, Email Address, Password and Confirm Password
    2. The access_type in users table will be set to 'normal'
  4. Once sign up is complete, the current user is saved in the Local Storage

Login

  1. Retrieve user information from the Local Storage and determine whether the user account is connected to Strava account.
  2. If the account is connected to Strava:
    1. Retrieve access_token from users table
    2. Decrypt the access_token
    3. Retrieve the latest ride information
    4. Add new ride activities into rides table
    5. For each activity, pull weather information for the date and add to conditions table
    6. Update parts table with new mileages
    7. Change part status indicator
    8. If there were no additional activities since the last login, just display the current status
  3. If the account is not connected to Strava:
    1. Display the current status
    2. User may select to enter ride information by selecting Enter Ride
    3. Display dialog for user to enter Date and Distance
    4. When Date is entered, pull weather information for the date and add to conditions table
    5. Update parts table with new mileages
    6. Change part status indicator

Setup Bicycles for Tracking

  1. User selects Add Bicycle option from the menu
  1. Prompt to add bicycle information
  2. User may add one or more bicycles
2. User selects Add Part option from the menu
  1. Prompt to add various parts user would like to track from the app and its estimated mileage since the last repair/replacement
  2. User may add one or more parts
3. User selects Add Ride option from the menu
  1. Prompt to add ride with mileage

Repair / Replace Parts

  1. User selects the part repaired or replaced by touching a part and selecting Repair / Replace button.
  2. Prompt user with the part information.
  3. The mileage on the part is reset.

bicyclehealth's People

Contributors

slledru avatar tanyapanich avatar mcdecke avatar

Watchers

James Cloos avatar  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.