/self-metrics

A Rails web app for collecting and analyzing personal health data

Primary LanguageRubyGNU General Public License v3.0GPL-3.0

Self-Metrics

CircleCI Maintainability License: GPL v3

A Rails web app for collecting and analyzing personal health data.

Displays metrics, charts, alerts, and achievements to encourage healthy behaviors.

Built for personal use, but open-source to the public.

Technical Features

  • Ruby on Rails web app with Postgres database
  • Bootstrap UI with mobile and desktop responsive design
  • Deployed to private Heroku instance for personal use
  • Security conscious authentication
  • Rspec test suite, run automatically with CircleCI
  • Code quality and style enforced by CodeClimate

Screenshots

self-metrics-screenshot

Setup

  1. Clone repository:
git clone git@github.com:njbbaer/self-metrics.git && cd self-metrics
  1. Install ruby and bundler with rbenv:
rbenv install
  1. Install Bundler dependencies:
bundle install
  1. Setup database
bundle exec rails db:setup
  1. Run server:
bundle exec rails server

Production Setup

First, follow the steps above to set up the app locally. Then perform the following steps:

  1. Ensure Node JS is installed:
sudo apt install nodejs
  1. Precompile assets:
bundle exec rails assets:precompile
  1. Enable service:
sudo systemctl enable $(pwd)/self-metrics.service
  1. Start service:
sudo systemctl start self-metrics

Run tests

bundle exec rspec