Skip to content
This repository has been archived by the owner on Feb 10, 2023. It is now read-only.

KostasDimakis/Health-Tracker

Repository files navigation

Health-Tracker

Health-Tracker (scaffolded using Yeoman's backbone generator) was developed to showcase my understanding of Backbone.js and handling of API requests. It's an optional project of Udacity's Front End Web Devloper Nanodegree.

Overview

This web app tracks the foods you eat throughout the day, keeping score on calories, proteins, carbs and fats. It features a searchable directory powered by Nutritionix, so no matter how sinful or healthy your cravings are you can track them!

Features

Feature Summary
Mobile First Built with mobile web in mind and presented in a beautiful and intuitive UI.
Food tracking Track every food you eat, when you ate it, its calories and its macro-nutrients.
Search Find a huge array of foods via the search function.

Suggested Improvements

These features are not currently being developed.

Feature Summary
Dates Better date formatting eg: 6 hours ago.
Throttled Search Reduced number of API requests while searching.
Timeline Foods organized by day, while tracking daily totals of calories and macro-nutrients.
Account Authentication system so a user can keep track across devices.

Use the app

Visit online.

Contribute

  1. Get npm.
  2. Download the project.
  3. cd into the project file.
  4. Install the developer depedencies via npm install.
  5. Install the app depedencies via bower install.
  6. Use grunt to serve the project via grunt serve.
  7. Also checkout Working with generator-backbone.

Links

  • BackboneJS - Backbone.js gives structure to web applications by providing models with key-value binding and custom events, collections with a rich API of enumerable functions, views with declarative event handling, and connects it all to your existing API over a RESTful JSON interface.
  • Bootstrap - Build responsive, mobile-first projects on the web with the world's most popular front-end component library.
  • Yeoman - The Web's scaffolding tool for modern web apps.
  • localStorage - A localStorage adapter for Backbone.js
  • Grunt - The Javascript Task Runner.
  • Sass - CSS with superpowers.
  • Jasmine - Jasmine is a behavior-driven development framework for testing JavaScript code.
  • Bower - A package manager for the web.
  • npm - npm is the package manager for JavaScript and the world’s largest software registry.

LICENSE

MIT © Kostas Dimakis