An open-source project aimed to bring pet lovers together with animals who need loving homes.
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github
client/public
config
models
routes
tests
.eslintrc.json
.gitignore
.travis.yml
CODE_OF_CONDUCT.md
CONTRIBUTING.md
LICENSE
README.md
app.js
index.js
package-lock.json
package.json

README.md

🐶  PET HERO

LICENSE MIT Build Status

Pet Hero is an open-source project aimed to bring pet lovers together with animals who need loving homes.

🐾  Getting Started

Contributions to this project are welcomed and appreciated, we just ask that you abide by the code of conduct. If you'd like to contribute to this project, please read the contribution instructions.

😻  Installing Dependencies

Clone this repository and while in the root directory of the project folder run the npm install command in the terminal to install the server dependencies.

Once installation has completed, cd client to change into the client directory and run npm install to install the client dependencies.

Return to the project root directory with cd .. and run the command npm run dev to start the development server on http://localhost:8080

🐈  About the Application

Minimum Viable Product (MVP)

The minimum viable product (MVP) describes the early stages of development to which the project satisfies the most basic functionality requirements.

  • Frontend

    • Logo
    • Icon Packages
    • Static Website
      • Home Page
      • Search Page (dummy data)
      • About Page
      • Contact Page
  • Backend

    • Basic Server
      • HTTP Routing for static pages
      • REST API Endpoints
      • Connection to external API(s)

Features & Ideas

  • The interface will:

    • Display a primary call-to-action
  • Users will be able to:

    • Search for animals to adopt
      • By entering their zip code (?)
      • By filtering results by animal species, breed, age, color, and location.
    • View individual animal "profile" pages
    • Create a user account (via social media?)
    • Save favorite animals
    • View favorited animals
    • Connect with shelters housing animals
    • Share animals to social media outlets in need of adoption
    • Share lost animal flyers to social media outlets
  • The application will:

    • Use an API of aggregated data of animals in shelters across the United States
    • Interface with a database to save users:
      • Favorited animals

Technology Stack

For now we will keep this basic. HTML and CSS on the frontend with a NodeJS server running Express on the backend.

Future Improvements:

  • Frontend

    • React + Redux
    • Styled Components
    • Babel
    • Webpack
  • Backend

    • REST API
    • Isomorphic/Universal Rendering (?)
    • MongoDB or Postgres (undecided)
    • Mongoose or Sequelize (undecided)

Progressive Enhancements:

  • Service Workers (offline enabled)
  • Client-side caching strategies (IndexedDB?)

Contributors


Christopher Gates

Ryan C. Martin