Single Page application for the all dog lovers out there.
Builded using the PERN stack, and the dogs api.
- See up to 8 dog breeds in a single page as cards with their name, image, and temperament.
- Pagination
- See the detail of a certain breed by clicking the image, where you can see the image, name, height and weight (in cm), life span, and temperaments.
- Filter the breeds by temperament and if they were created or not.
- Sort them by name ascendent and descendent, and by weight from lightest no heaviest and vice versa.
- Search for breeds that contain the searched term.
- Create your own breed.
Front-end: React, Redux.
Back-end: Node, Express, and PostgreSQL for the database.
To run this project, first you will need to add the following environment variables to your .env file.
API_KEY
- which you will get by creating an account on the dogs api.
DB_USER
- your database username.
DB_PASSWORD
- your database password.
DB_HOST
- the host where your database is located.
DB_NAME
- the name of your database.
DB_PORT
- the port from where your database is listening.
API_PORT
- the port from where your api is listening
NODE_ENV
- the Server current environment for good connection with the client
CLIENT_DEV_URL
- the client dev url for CORS config
CLIENT_PROD_URL
- the client production url for CORS config
NOTE: You can also check the .env.example
file to see envs example values.
Then, follow the steps below:
Clone the project
git clone https://github.com/NachoHotz/Dogspedia.git
Go to the project directory
cd Dogspedia
Head to the api folder
cd api
Install dependencies
npm install
Do the same but with the client folder
cd client
npm install
Then, execute npm start
on both folders to initialize the database, and the client to run the app.