Giter Site home page Giter Site logo

adopt_dont_shop's Introduction

Adopt Don't Shop

Website that allows shelters to create profiles and add animals that can be adopted. Users can view different shelters and pets, both adoptable pets or pets pending adoption.

How to install it

  1. Make sure you have Ruby v. 2.5.5 and Rails v. 5.1.7 installed.
  2. Clone this repo.
  3. Once you have your local clone; navigate into the project, bundle your gems and create, migrate, and seed your database:
cd adopt_dont_shop
bundle install
rails db:create
rails db:migrate
rails db:seed
  1. Run rspec in your terminal to ensure all tests are passing.
  2. Run your server in your local environment (your computer). Enter in your terminal rails s and then visit localhost:3000.
  3. To see the production site on Heroku, visit: https://fathomless-lake-46536.herokuapp.com/

Features

Shelters

  • Shelters Index page - List of all shelters in the database. With the option to sort shelters by number of adoptable pets or sort in alphabetical order.
  • Shelter Show page - Details of a specific shelter.
  • Shelter Creation - Fill out a form to create a new shelter.
  • Shelter Update - Fill out a form to update any attribute of a shelter.
  • Shelter Delete - Delete a specific shelter.

Relationship: A Shelter has many Pets.

Attributes Description Requirement
Name Shelter name (string) Required
Address Address where they operate (string) Required
City City where they operate (string) Required
State State where they operate (string) Required
Zip Zipcode where they are located (string) Required

Pets

  • Pets Index page - List of all pets in the system. With the option to filter by pet status (adoptable/ pending adoption).
  • Pets Show page - Details of a specific pet.
  • Pets Update - Fill out a form to update any attribute of a pet.
  • Pets Delete - Delete a specific pet.

Relationship: A Pet belongs to a Shelter.

Attributes Description Requirement
Image Pet image path (string) Required
Name Pet name (string) Required
Description Brief description of the pet (text) Required
Approximate age Age in years (integer) Required
Sex Sex (enum - integer) Required
Status Active/ Inactive (enum - integer) Adoptable by default

Shelter Pets

  • Shelter Pets Index page - Shows the total pet count and all the pets that belong to a shelter. With the option to filter by pet status (adoptable/ pending adoption). Adoptable pets are displayed first.
  • Shelter Pet Creation - Fill out a form to create a new pet related to that shelter.

Built with

  • Rails 5.1.7
  • Ruby 2.5.5
  • PostgreSQL
  • HTML/CSS

Testing

All test are done with RSpec with a 100% code coverage (calculated with SimpleCov)

To run all tests, enter in your terminal:

$ cd adopt_dont_shop
$ rspec

To run a single test:

$ cd adopt_dont_shop
$ rspec spec/models/shelter_spec.rb #(e.g.)

To see the test coverage, run tests first then open coverage report:

$ rspec
$ open coverage/index.html

adopt_dont_shop's People

Contributors

nmcolome avatar dependabot[bot] avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.