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.1.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.