/chore-schedule

Simple chore scheduling app

Primary LanguageRubyMIT LicenseMIT

Chore Schedule

Test Coverage badge

RoR Badge Postgres Badge Heroku Badge Docker Badge

An app for making and keeping a chore schedule. See it hosted at https://choreplan.truggeri.com

About the Application

This app is focused on household chores. Users can create chores, assign them a frequency in days, weeks or months and "perform" them to reset the next due clock. They can assign chores into custom categories as well.

About Development

This app is written with Ruby on Rails. It was originally written to prove a fast proof-of-concept, but has since been refactored to follow better patterns such as Draper Decorators, MiniTest unit tests, seeds, and Factory Bot factories. It is currently in a stable state.

Running

bundle install
bundle exec rails server

Dockerfile

There is an included Dockerfile that installs gems, copies relevant files and does an asset precomile. It doesn't use a mounted volume, so it's not ideal for local development, but it could quickly be modified to do so (this would enable live reloading of your code rather than rebuiding after every change). Build it with,

docker build --tag chore-schedule-app .

You can then run with a command like,

docker run --rm -p 3000:3000 -it -e DATABASE_URL=xxx chore-schedule-app:latest

Tests

The test suite includes unit test for logic in models, helpers and decorators. It also includes some integration tests that exercise basic functionality in the controller logic. These tests aims to test many common paths that produces high test coverage, but this is not guarantee that the testing is exhaustive.

bundle exec rails test