edwardkrupicka / fitlit

FitLit project starter kit for students

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

🔥 FITLIT 🔥

A Front End Development Project by:

Project Manager : Nik Seif

Description

This application randomly fetches data on one of 50 users and their daily metrics for hydration, steps, sleep and miscellaneous activities. Daily and weekly data is then displayed on the dashboard, where they can also see their friends' daily step goal. Users can also post new data to their profile.

Goals

The goals of this project were to:

  • Implement ES6 classes that communicate to each other as needed and utilize inheritance.
  • Use object and array prototype methods to perform data manipulation.
  • Create a dashboard that is easy to use and displays information in a clear and accessible way.
  • Write modular, reusable code that adheres to SRP (Single Responsibility Principle) and DRY (Don't Repeat Yourself).
  • Implement a robust testing suite using TDD.
  • Make network requests to retrieve and post data.

Running FITLIT

  • Clone the repo down to your machine.
  • Clone the server repo here.
  • Open the root folders for both repos in your terminal and enter npm install on both to install the dependencies.
  • In your terminal run npm start on both repos to initialize the server and webpage.
  • Go back to your browser and enter https://localhost:8080 in the search bar to access the frontend of the application.

Visual of Functionality:

Desktop Dashboard

Screen Shot 2021-11-09 at 11 43 04 AM

Responsive Dashboard

Screen Shot 2021-11-09 at 12 27 47 PM

Challenges

  • Implementing fetch API
  • Using ES6 and iterator methods in our JS
  • Importing the fetched data to our JS file
  • Error handling duplicate data for a specific date

Wins!

  • The design of the website
  • The team coming together and working smoothly with GitHub tools
  • Created responsive charts using Chart.js
  • Implement sleek 'flip card' interface
  • Class inheritance

Technologies Used:

  • Javascript
  • HTML, CSS and Sass
  • Node.js & NPM
  • Chart.js
  • Webpack

Future Goals

  • DRY up some of the Javascript
  • Optimize code for faster load times and performance
  • Check some elements of accessibility, including testing with a screenreader
  • Flesh out sad path testing
  • Enable visiting other user pages
  • Add login and authentication

Rubric:

About

FitLit project starter kit for students


Languages

Language:JavaScript 86.6%Language:SCSS 8.0%Language:CSS 5.4%