Skip to content

Sandyy44/fullstack-ecommerce

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

50 Commits
 
 
 
 
 
 
 
 

Repository files navigation

ElectroHub

ElectroHub is a full-stack e-commerce application specialized in selling electronics, built using the MEAN stack (MongoDB, Express.js, Angular, Node.js). This project covers a complete e-commerce workflow including authentication, product management, cart, checkout, and order management.


Features

General

  • Full-stack e-commerce system for electronics.
  • Secure backend with data validations.
  • JWT authentication with access token and refresh token handling.
  • Role-based authorization (Normal user & Admin).
  • Complete RESTful API for backend operations.

User Features

  • Browse products and view product details.
  • Add products to cart and manage cart items.
  • Checkout and manage orders.
  • Edit profile information and profile picture.
  • Change password and logout functionality.
  • Email verification with confirmation code for login, registration, and password reset.
  • All forms and inputs validated both on frontend and backend.

Admin Features

  • Admin panel to manage users, products, and orders.
  • Perform CRUD operations on products and users.
  • Track orders and manage their statuses.

Frontend Features

  • Angular-based frontend with services, guards, and interceptors.
  • Route handling for different user roles.
  • Seamless integration with backend API.
  • Responsive and interactive UI.

Tech Stack

  • Frontend: Angular 17
  • Backend: Node.js, Express.js
  • Database: MongoDB
  • Authentication: JWT, Access Token & Refresh Token
  • Other: Angular services, guards, and interceptors for API handling

ElectroHub Images

Home Page

Image Image Image

Before Login

Image

Loign & Register

Image Image

Forgot Password

Image Image

Products

Image Image

Product Details

Image

Cart

Image

Checkout

Image

User Orders

Image Image

Profile

Image Image Image

Admin Panel

Image Image

Products Management

Image

Create Product

Image

Categories Management

Image Image

Users Management

Image

Orders Management

Image

Environment Variables

Create a .env file inside the config folder inside the Backend folder with the following variables:

MOOD=DEV
DBURI="your_mongodb_connection_string"
PROJECTNAME="ProjectManagement"
PORT=5000
nodeMailerEmail="your_email@gmail.com"
nodeMailerPassword="your_email_password"
SALTROUND=8
ENCRYPTION_KEY="your_encryption_key"
EMAILTOKEN="your_email_token"
TOKINSEGNITURE="your_token_signature"
BARERKEY="Bearer "
SESSIONSECRET="your_session_secret"
STRIPE_KEY="your_stripe_key"
SUCCESS_URL="http://localhost:3000/#/orders"
CENCEL_URL="http://localhost:5000/order/cencelOrder"
endpointSecret="your_stripe_webhook_secret"

About

ElectroHub is a full-stack e-commerce web application with a complete backend API using Node.js & Express.js, role-based authentication & authorization, a responsive Angular 17 standalone frontend and MongoDB for database.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors