https://github.com/garyeung/e_commerce_api
This project outlines the development of a RESTful API for an e-commerce platform. The API is designed to handle user authentication, product management, shopping cart functionality, and payment processing through Stripe.
https://github.com/garyeung/e_commerce_api
e-commerce-api express stripe-api typescript
Last synced: about 2 months ago
JSON representation
This project outlines the development of a RESTful API for an e-commerce platform. The API is designed to handle user authentication, product management, shopping cart functionality, and payment processing through Stripe.
- Host: GitHub
- URL: https://github.com/garyeung/e_commerce_api
- Owner: garyeung
- License: mit
- Created: 2024-12-23T07:51:51.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-01-25T08:22:02.000Z (over 1 year ago)
- Last Synced: 2025-04-03T15:51:04.734Z (about 1 year ago)
- Topics: e-commerce-api, express, stripe-api, typescript
- Language: TypeScript
- Homepage: https://roadmap.sh/projects/ecommerce-api
- Size: 30.3 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# E-commerce API
(https://roadmap.sh/projects/ecommerce-api)
This project outlines the development of a RESTful API for an e-commerce platform.
The API is designed to handle user authentication, product management, shopping cart functionality, and payment processing through Stripe.
## Prerequisites
- Node.js (latest)
- npm or yarn
- PostgreSQL database
- TypeScript
- Stripe API
## Installation
```sh
git clone https://github.com/garyeung/E_Commerce_API.git
cd E_Commerce_API
npm install
```
Creating your .env file according to the .env.example file
### Usage
```bash
npm run dev
npm run build
npm run test
npm run test:watch
```
## API Endpoints:
### User Oriented:
```sh
POST /user/login
POST /user/signup
POST /user/checkout
GET /user/cart/all
POST /user/cart/add
PUT /user/cart/update
DELETE /user/cart/remove
```
### Products Oriented:
```sh
GET /products?search=
GET /products/:id
```
### Admin Oriented:
```sh
POST /admin/login
GET /admin/products
GET /admin/products/:id
POST /admin/products/add
PUT /admin/products/update/:id
DELETE /admin/products/remove/:id
```
### Stripe Webhook:
```sh
POST /webhook
```
### Testing:
Comprehensive unit and integration tests for all API endpoints.
### Advancement
- Upload and store images
- Order processing and delivery
- Better database manipulation