https://github.com/kirankumar-matham96/evershop-e-commerce-app
https://github.com/kirankumar-matham96/evershop-e-commerce-app
Last synced: 13 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/kirankumar-matham96/evershop-e-commerce-app
- Owner: kirankumar-Matham96
- Created: 2025-03-25T12:26:27.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2025-03-26T20:55:23.000Z (over 1 year ago)
- Last Synced: 2025-10-18T15:58:31.009Z (9 months ago)
- Language: JavaScript
- Homepage: https://evershop-e-commerce-app.vercel.app
- Size: 7.93 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Evershop-e-commerce-app
[[Watch the demo video in YouTube]](https://youtu.be/_Kf75Zwh6sE)
---
Welcome to **Evershop E-Commerce App**, an application with backend services for managing products and categories in an E-commerce store. This application integrates with EverShop and allows seamless product and category creation.
---
## Features
- Add a single product to EverShop
- Bulk upload products from a JSON file
- Create categories dynamically if they do not exist
- Fully structured **Express.js** backend with **CommonJS** module system
---
## Prerequisites
Before setting up the application, ensure you have the following installed on your system:
### **Node.js** (v16+ recommended)
- Download & Install from: [https://nodejs.org/](https://nodejs.org/)
- Verify installation:
```sh
node -v
```
### **PostgreSQL** (Database)
- Download & Install from: [https://www.postgresql.org/download/](https://www.postgresql.org/download/)
- Start PostgreSQL service:
Linux/macOS
```sh
sudo systemctl start postgresql
```
macOS with Homebrew
```sh
pg_ctl -D /usr/local/var/postgres start
```
Windows
```sh
net start postgresql
```
- Verify connection:
```sh
psql -U postgres
```
Once these dependencies are installed, follow the [Setup & Installation](#setup--installation) steps.
## Setup & Installation
You can refer [EverShop](https://evershop.io/) for the initial setup.
### **Clone the Repository**
```sh
git clone https://github.com/kirankumar-Matham96/Evershop-e-commerce-app.git
cd my-evershop-api
```
### **Install Dependencies**
```sh
npm install
```
### **Configure Environment Variables**
Create a `.env` file in the root directory and add:
```env
DB_HOST=localhost
DB_PORT=5432
DB_USER=postgres
DB_PASSWORD=postgres
DB_NAME=
DB_SSLMODE=disable
POSTGRES_PASSWORD=postgres
POSTGRES_USER=postgres
POSTGRES_DB=postgres
API_BASE_URL=http://localhost:3000/api
ADMIN_COOKIE=
```
**_NOTE_**: Also, create a **dummyData.json** in thr root to place the data as you like. Make sure that the required fields should be included in the product details.
### **Start the Server**
```sh
npm start
```
The server will run on **http://localhost:3000**.
---
## API Endpoints
Note: to use API endpoints, keep the app running and open new terminal. CD to the app directory and run the below command:
```sh
npm run api
```
now you can use the postman or any other client to test the APIs.
[Postman Collection](https://documenter.getpostman.com/view/15920123/2sAYkLmGz1)
## Project Structure
```
my-evershop-api/
│── .evershop/
│── media/
│── node_modules/
│── public/
│── src/
│ ├── features/
│ │ ├── category/
│ │ │ ├── controller.js
│ │ │ ├── routes.js
│ │ ├── products/
│ │ │ ├── controller.js
│ │ │ ├── routes.js
│ ├── middlewares/
│ │ ├── errorHandling.middleware.js
│ ├── utils/
│ │ ├── customError.js
│── .env
│── dummyData.json
│── .gitignore
│── server.js
│── package-lock.json
│── package.json
│── README.md
│── server.js
```
---
Happy Coding!