Skip to content

leidZhang/Shoe-Store-Website

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Introduction

This is the course project for EECS4413, is an e-commerce website utilizing React, Django and MySQL database. It provides several functions such as product display, shopping cart and order viewing.

Features

  • User management: This module is responsible for viewing, modifying, creating, deleting, and disabling users.
  • Cart: This module is responsible for processing the user's shopping cart content. Users can modify the quantity or delete the product on the cart page.
  • Checkout: This module is responsible for processing the payment method, shipping address, and completing the submission and confirmation of orders.
  • Product Information Management: This module is responsible for storing and managing various data of products, such as names, prices, classifications, descriptions, images, inventory, etc., as well as providing search, filtering, sorting, and other functions for products.
  • Order Management: This module is responsible for tracking and processing the user's order status, such as processing, delivered, canceled, etc.

Installation and Usage

To install and run this project on your local machine, you need to have Python and Node.js on your computer, as well as the following packages:

  • Django: pip install django
  • Django Rest Framework: pip install djangorestframework
  • Djoser: pip install djoser
  • Django filter: pip install django-filter
  • Corsheader: pip install django-cors-headers
  • mysqlclient: pip install mysqlclient

Then, follow these steps:

  1. Clone this repository to your machine, you can use the following command: git clone https://github.com/leidZhang/EECS4413Project.git
  2. Go to ereact folder to start the frontend:
cd ereact
npm start
  1. Open another console, go to edjango folder to start the backend:
cd edjango
python manage.py runserver
  1. Once the frontend and the backend are running, you can enjoy this project.
    front-end url: http://localhost:3000/
    back-end url: http://localhost:8000/

To use the django administration http://localhost:8000/admin, you need to log in with a username and password. You can use the following:
Username: admin
Password: 000000
Alternatively, you can create your own supperuser with the command python manage.py createsupperuser

Note:

  1. Before the first time starting the React frontend, the follow command have to be run on the console to install the dependencies:
cd ereact
npm install
  1. Before the first time starting the Django backend, the following steps have to be done:
    i. Create a new schema called ecommerce
    ii. Go to edjango folder and migrate the model with python manage.py makemigrations and python manage.py migrate
    iii. Import data from the ecommerce.sql in the sql folder

API Endpoints:

Base URL: http://localhost:8000

Login: /auth/token/login
Logout: /auth/token/logout
Customer Register: /auth/users/
Customer Information: /api/identity/user-info
Products (pagination): /api/data-access/products
Products (full list): /api/data-access/products/all
Product Detail: /api/data-access/products/:id
Brands: /api/data-access/brands
Category: /api/data-access/categories
Order History: /api/ordering/orders
Order Detail" /api/ordering/orders/:id
Order Items: /api/ordering/orders/:id/items
Cart: /api/shopping-cart/cart
Cart Items: /api/shopping-cart/cart/items
Cart Item (Specific item): /api/shopping-cart/cart/items/:id
Inventory List: /api/catalog/inventory
Inventory (Specific inventory): /api/catalog/inventory/:id

Project Preview

Login

Cart

Item List

Order Placement

License

This project is licensed under the Apache-2.0 license - see the LICENSE file for details.

About

An e-commercial website selling shoes for EECS4413 project

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •