Skip to content

RESTful and responsive single-page e-commerce application built with Vite, React, Node.js, Express, MongoDB, Mongoose, and vanilla CSS.

License

Notifications You must be signed in to change notification settings

cnourrcier/cardinal-finds

Repository files navigation

E-commerce MERN Stack Application

This is a full-stack e-commerce web application built with the MERN stack (MongoDB, Express.js, React.js, Node.js).

View Demo

Tech Stack

Frontend

HTML5 CSS3 JS REACT REACT_ROUTER VITE

Backend

NODEJS EXPRESS MONGODB MONGOOSE

Project Overview

This project aims to create a complete, robust, and user-friendly e-commerce application for showcasing software development skills. It includes user authentication and authorization, data validations, product search, product browsing, product management, shopping cart functionality, checkout and order processing, and mock payment simulation.

E-commerce Demo GIF

Features

User Authentication and Authorization

  • Sign up, login, logout
  • Email verification
  • Password reset

User Profile Management

  • View and update profile information such as name, address, password, and email

Product Search and Browse

  • Search products by keyword
  • Browse products by category

Shopping Cart

  • Add, remove, and update items in shopping cart

Checkout and Order Processing

  • Review order, update shipping information
  • Mock payment integration

Order History

  • View past orders

Admin Management

  • View, update, and delete users

Installation

Prerequisites:

  • Node.js
  • npm
  • MongoDB

Cloning the Repository:

git clone <repository-url>

Installing Dependencies:

cd e-commerce-front-end-mern
npm install
cd ..
cd e-commerce-server-mern
npm install

Environment Variables:

Set up your .env file in the root of the e-commerce-server-mern directory with the following:

NODE_ENV=<development or production>
PORT=5000
MONGO_URI=<Your MongoDB URI>
JWT_SECRET=<Your JWT Secret>
LOGIN_EXPIRES=<Login Expiration Time>
DEV_EMAIL_USER=<Your Email User (For development only)>
DEV_EMAIL_PASSWORD=<Your Email Password (For development only)>
DEV_EMAIL_HOST=<Your Email Host (For development only)>
PROD_EMAIL_USER=<Your Email User (For production only)>
PROD_EMAIL_PASSWORD=<Your Email Password (For production only)>
PROD_EMAIL_HOST=<Your Email Host (For production only)>
EMAIL_PORT=<Your Email Port>
FRONTEND_URL_DEV=http://localhost:5173
PROD_URL=cardinalfinds.com

Usage

Running the Development Server and Client Concurrently:

cd e-commerce-server-mern
npm run dev

Building and Running for Production:

cd e-commerce-front-end-mern
npm run build
cd ..
cd e-commerce-server-mern
npm run start

Contact Me

linkedin

About

RESTful and responsive single-page e-commerce application built with Vite, React, Node.js, Express, MongoDB, Mongoose, and vanilla CSS.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published