https://github.com/rk28284/edgistify
This project provides a simple API to manage a user's shopping cart. It allows adding products to the cart, checking stock availability, placing orders, and ensuring proper user authentication with JWT tokens.
https://github.com/rk28284/edgistify
angualrjs bcrypt bootstrap5 exprerss html-css-javascript jwt-authentication mongodb nodejs typescript
Last synced: 8 days ago
JSON representation
This project provides a simple API to manage a user's shopping cart. It allows adding products to the cart, checking stock availability, placing orders, and ensuring proper user authentication with JWT tokens.
- Host: GitHub
- URL: https://github.com/rk28284/edgistify
- Owner: rk28284
- Created: 2025-02-11T10:39:01.000Z (3 months ago)
- Default Branch: main
- Last Pushed: 2025-02-12T13:27:50.000Z (3 months ago)
- Last Synced: 2025-02-12T13:41:49.266Z (3 months ago)
- Topics: angualrjs, bcrypt, bootstrap5, exprerss, html-css-javascript, jwt-authentication, mongodb, nodejs, typescript
- Language: TypeScript
- Homepage: https://famous-truffle-3c86fe.netlify.app/
- Size: 337 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
Cart Management API
Introduction
This project provides a simple API to manage a user's shopping cart. It allows adding products to the cart, checking stock availability, placing orders, and ensuring proper user authentication with JWT tokens.
Project Type
Fullstack Project
Deployed App
Directory Structure
edgistify/
├─ server/
├─ client/
Features
- User registration and login
- Add products to the cart
- Check stock availability before adding to the cart
- Place orders
- Get all products and fetch individual products by ID
- JWT-based user authentication
- Form validation applied for user registration and login
Design Decisions and Assumptions
- JWT is used for authentication to secure user actions.
- Stock availability is checked before adding items to the cart.
- Products are stored in a MongoDB database.
Installation & Getting Started
Follow these steps to install and get the project running:
cd client
npm install
npm start
Usage
Provide instructions and examples on how to use your project:
# Example usage
npm run start
Credentials
Provide user credentials for authenticated pages:
Email: [email protected]
Password: 12345678
APIs Used
No external APIs were used in this project.
API Endpoints
List of API endpoints:
User Routes
-
POST /register
- Register a new user -
POST /login
- Login a user
Cart Routes
-
POST /add-to-cart
- Add a product to the user's cart (requires authentication)
Order Routes
-
POST /place
- Place an order (requires authentication)
Product Routes
-
GET /product
- Get all products -
GET /product/:id
- Get a single product by its ID -
POST /product/add
- Add a new product
Technology Stack
-
Frontend: Angular 15, Bootstrap 5, TypeScript, HTML, CSS, JavaScript -
Backend: Node.js, Express.js -
Database: MongoDB -
Authentication: JWT - Other libraries/modules: dotenv, mongoose, jsonwebtoken
License
This project is licensed under the MIT License.