Skip to content

coryrpow/adopt-dont-shop-7

 
 

Repository files navigation

Adopt, don't Shop

This is a paired project used in Turing School's Backend Program Module 2.

Learning Goals

In this project, students will build upon the code in this repo to create a Pet Adoption Platform. Users will be able to apply to adopt pets, and Admins will be able to approve or reject applications and see statistics for the Shelters, Pets, and Applications in the system.

  • Build out CRUD functionality for a many to many relationship
  • Use ActiveRecord to write queries that join multiple tables of data together
  • Use MVC to organize code effectively, limiting the amount of logic included in views and controllers
  • Validate models and handle sad paths for invalid data input
  • Use flash messages to give feedback to the user
  • Use partials in views
  • Use within blocks in tests
  • Track user stories using GitHub Projects
  • Deploy your application to the internet

Requirements

  • Project must use Rails 7.0.x, Ruby 3.2.2, and PostgreSQL
  • Use of resources on this project is not permitted
  • Use of scaffolding on this project is not permitted
  • Students wanting to use any extra gems on this project must first get permission from your instructors
    • Pre-approved gems are pry, simplecov, capybara, rspec-rails, shoulda-matchers, faker, factory_bot_rails, orderly, launchy

Project Phases

  1. Set Up
  2. User Stories
  3. Evaluation

Check In

This project will have one Check In. During your Check In, you should be prepared to review your database schema for the many to many relationship, your deployment to the internet, and your GitHub Projects board.

Project Documents

Database schema DTR


Description:

This project is a brownfield project, meaning that it was not created from scratch but was inherited by us and we built on top of a legacy code base. When we recieved the repo we were able to deploy(see Additional Documentation below for deployment link) with working functionality of the Pets, Shelters, Vetrinarians, and Veterinary Offices sections of the site. We were tasked with creating a Pet Adoption Platform for this existing site. We wanted Users to be able to apply to adopt pets, and Admins would be able to approve or reject applications, as well as see statistics for the Shelters, Pets, and Applications.

Database Design:

db_design Database Visual

The Database has a many to many relationship in how the tables interrelate. So Shelters can have many pets, pets can belong to many applications, but only through the pet applications table.

Contributers:

Tech Stack:

  • rspec-rails
  • ruby
  • pry
  • capybara
  • shoulda-matchers
  • simplecov
  • orderly
  • deployed on heroku

Additional Documentation:

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Ruby 85.7%
  • HTML 12.9%
  • Other 1.4%