/PERN-Store

A full-stack e-commerce project built with Postgres, Express, React and Node.

Primary LanguageJavaScript

Codacy Badge Netlify Status wakatime

PERN STORE

A full-stack e-commerce project built with Postgres, Express, React and Node.

Swagger API Documentation

Documentation

Demo

Run demo

Screenshots

Homepage Screen Shot

Database Schema

ERD

Run Locally

Clone the project

  git clone https://github.com/dhatguy/PERN-Store.git

Go to the project directory

  cd PERN-Store

Install dependencies

  npm install

Go to server directory and install dependencies

  npm install

Go to client directory and install dependencies

  npm install

Go to server directory and start the server

  npm run dev

Go to client directory and start the client

  npm run client

Start both client and server concurrently from the root directory

  npm run dev

Running with docker

Make sure you have Docker installed

Run the development environment

docker-compose -f docker-compose.dev.yml up

Run the production environment

docker-compose up

Go to http://localhost:3000 to view the app running on your browser.

Deployment

To deploy this project run

  npm run deploy

Check this article for guidance on how to deploy.

Tech

Environment Variables

To run this project, you will need to add the following environment variables to your .env files in both client and server directory

client/.env

VITE_GOOGLE_CLIENT_ID

VITE_GOOGLE_CLIENT_SECRET

VITE_API_URL

VITE_STRIPE_PUB_KEY

server/.env

POSTGRES_USER

POSTGRES_HOST

POSTGRES_PASSWORD

POSTGRES_DATABASE

POSTGRES_DATABASE_TEST

POSTGRES_PORT

PORT

SECRET

REFRESH_SECRET

SMTP_FROM

STRIPE_SECRET_KEY

Contributing

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

Feedback

Joseph Odunsi - @odunsi - odunsiolakunbi@gmail.com

Project Link: https://github.com/dhatguy/PERN-Store

Demo Link: https://pern-store.netlify.app