/pawty-trainer-api

Turing Mod4 BE Group Project - A tracking app for training your dog(s)

Primary LanguageRuby

Pawty Trainer Build Status

This is the "backend" repository for the Pawty Trainer application. It is responsible for sending api responses to our frontend application.

About this Project

Pawty Trainer is an application in which users can schedule training for their puppy. Users can add dogs to their pack, and create trainings for each dog. A user receives a reward ("★") for completing their first training, and then for every third training after that.

Table of Contents

Database Schema

DB Schema

How to use the app

Deployment

Local Installation

  1. Fork and Clone the repo
  2. Install gem packages: bundle install
  3. Setup the database: rails db:create
  4. Run migrations: rails db:migrate

Running the tests

  • Run bundle exec rspec to run the test suite

  • To see a coverage report enter $ open coverage/index.html

  • SimpleCov test coverage is at 100.00%:

Pawty Trainer Test Coverage

About the app

Tech Stack

Ruby Ruby on Rails GraphQL JSON PostgreSQL Git Heroku Travis

Versions

  • Ruby 2.7.2
  • Rails 5.2.6

Important Gems

Learning Goals

  • Work with a frontend team to build out a fullstack application
  • Use continuous integration tools to build and automate the testing and deployment of the application
  • Utilize a Git Rebase workflow
  • Use an agile process to turn well defined requirements into deployed and production ready software
  • Utilize GraphQL

Contributors

Frontend

Sydney Bear Alex Kio
GitHub GitHub
LinkedIn LinkedIn
Portrait photo of Sydney Portrait photo of Alex

Backend

Emmy Morris Kon Ham Mark Yen
GitHub GitHub GitHub
LinkedIn LinkedIn LinkedIn
Portrait photo of Emmy Portrait photo of Kon Portrait photo of Mark

Future Additions & Reflections

There are so many ways to improve this site. Some major priorities include:

  1. Add user authentication (signup, login)
  2. Add an alert for the user to see when they've received a new reward
  3. More robust loading and error pages