The
Project Report on
E-Commerce Website
By
Seat No Name Of Student
Shahnawaz Shaikh
MCA – I, SEM – II
2023-2024
To
Savitribai Phule Pune University
Pune- 411041
In Partial Fulfillment of the Degree of
Master in Computer Application (M. C. A.)
Under The Guidance Of
Miss. Aishwarya Pawar
Shri Khanderai Pratishthan’s
DNYANSAGAR INSTITUTE OF MANAGEMENT & RESEARCH,PUNE
DNYANSAGAR INSTITUTE OF MANAGEMENT & RESEARCH
Date:
CERTIFICATE
This is to certify that Mr. Rahul Kumar , has successfully completed his project
work entitled “ Historical E-Commerce Website ” in partial fulfillment of
MCA – I
Semester-II program for the year A.Y. 2023-024 to Savitribai Phule Pune
University.
He have worked under our guidance and direction.
Prof. Aishwarya Pawar
Project Guide
Internal Examiner External Examiner
Dr. Sajid Alvi
Director
DECLARATION
To,
The principal,
DIMR, Pune
Respected Mam/Sir
We hereby declare that the project entitled “E-Commerce Website” developed under the
guidance of Prof. Aishwarya Pawar is our original work. The reports generated in the
project work are based on the information collected by us. We have not copied from any
other project report submitted to SPPU earlier. The work has been submitted in partial
fulfilment of the requirement of degree Master of Computer Application (MCA) to
Savitribai Phule Pune University.
Student Name: Shahnawaz Shaikh
Place: Pune
Date:
ACKNOWLEDGMENT
This work has been during project period, present project work method of education is
really good opportunity to put theoretical knowledge into a planned exercise with on
aim to solve a real-life business problem and also develop confidence to face various
situations.
I thanks to Dr. Sajid Alvi (Director DIMR) for providing congenial atmosphere and
encouragement. I express my sincere thanks for giving us moral support and has kind
attention and valuable guidance to me throughout this course.
I would like ess my deep and foremost gratitude to my Internal Project Guide Prof.
Aishwarya Pawar has always been a source of inspiration and motivation for me. We
would like to thank all our friends who have been always there to help me, and also who
helped us directly or indirectly in completion for this project.
Thank You,
Student Name
Shahnawaz Shaikh
INDEX
Chapter Page number
CHAPTER 1 : INTRODUCTION
1.1 Introduction 1
1.2 Existing System 2
1.3 Need for System 3
1.4 Operating Environment Hardware and Software 4
CHAPTER 2 : PROPOSED SYSTEM
2.1 Proposed System 5
2.2 Module specifications 6
2.3 Scope 7
2.4 Objectives of System 8
CHAPTER 3 : ANALYSIS & DESIGN
3.1 Entity Relationship Diagram 9
3.2 Use Case Diagrams 10-12
3.3 Activity Diagram 13
3.4 Class Diagram 14
3.5 Module Hierarchy Diagram 15
3.6 Table specifications (Database design) 16-17
3.7 Data dictionary 18
3.8 Test Cases 19-20
CHAPTER 4 : USER MANUAL
4.1 User Interface Screens (Input) 21-22
4.2 Output Screens with data 23-24
4.3 Data Reports 25-26
4.4 Sample program code 27-28
4.5 Limitations and Bibliography 29
CHAPTER 1 : INTRODUCTION
1.1 Introduction
Welcome to the journey through time with our Historical Ecommerce Website! Step into the past
and explore a virtual marketplace where history comes alive through the lens of commerce. In this
innovative project, we blend the charm of antiquity with the convenience of modern technology,
offering you a unique opportunity to experience the richness of bygone eras through the lens of
trade and exchange.
Our platform transports you to various historical periods, each meticulously recreated to capture
the essence of its economic landscape. Whether you're fascinated by the opulence of ancient
civilizations, the bustling markets of the medieval age, or the dawn of global trade routes, our
Historical Ecommerce Website provides a captivating window into the commercial dynamics that
shaped human civilization.
Immerse yourself in the sights and sounds of historical marketplaces, browse authentic replicas of
artifacts and commodities, and embark on a journey of discovery as you learn about the economic
systems, cultural exchanges, and innovations that defined different epochs in history.
Join us as we bridge the gap between past and present, offering a novel way to engage with
history and appreciate the role of commerce in shaping the world we inhabit today. Step into our
virtual marketplace and let the past unfold before your eyes. Welcome to the Historical
Ecommerce Website – where history is just a click away.
6
1.2 Existing System
In existing system of buying goods has several disadvantages either online and offline. It
requires lots of time to travel to the particular shop to but not available the historical things is
goods (have to visit market physically). It is having lots of manual work.
Since everyone is leading busy life now a days, time means a lot to everyone. Also, there are
expenses for travelling from house to shop. It is less user-friendly. In current system user must
go to shop and order products.
It is difficult to identify the required product. More over the shop from where we would like to
buy something may not be open 24*7*365. Hence, we have to adjust our time with the
shopkeeper’s time or vendor’s time.
In current online system like amazon, we have to buy prime membership for fast and same day
delivery and also quality problems.
7
1.3 Need for System
User Authentication and Registration: Allow users to create accounts and securely log in
using email, social media accounts, or other methods.
Product Catalog Management: Implement a system to manage product listings, including
categories, descriptions, images, prices, and availability.
Shopping Cart: Enable users to add products to their cart, view the items in their cart, and
proceed to checkout.
Payment Gateway Integration: Integrate with payment gateways like PayPal, Stripe, or others
to facilitate secure online transactions.
Order Management: Manage orders from placement to fulfillment, including order tracking,
invoices, and shipping details.
Inventory Management: Keep track of stock levels, automatically update inventory as orders
are placed, and provide notifications for low stock.
Responsive Design: Ensure the website is optimized for various devices and screen sizes to
provide a seamless experience for users on desktops, tablets, and smartphones.
8
1.4 Operating Environment Hardware and Software
Hardware
CPU RAM HDD EXTRA
Intel Core i5 8GB 512GB Mouse, Keyboard
Software
FRONTEND BACKEND SERVER IDE
HTML, CSS, MySql Express, NodeJS Visual Studio Code
JavaScript, React
9
CHAPTER 2 : PROPOSED SYSTEM
1.1 Proposed System
The proposed system helps in building a website to buy, products or goods with fastest delivery.
Unlike traditional commerce that is carried out physically with effort of a person to go market
and get products, Historical E-Commerce has made it easier for human to reduce physical work
and to save time.
The basic concept of the application is to allow the customer to shop virtually using the Internet
and allow customers to buy the items and articles of their desire from the store.
Historical E-commerce is fast gaining ground as an accepted and used business paradigm
10
1.2 Module specifications
User Login – User have to first register and then, have to login for buy products.
Product– Display all products available.
Cart– Display items that added by user in cart with quantity.
Payment– User have to make successful transaction for their order.
Place Order– Display order confirmation after successful payment
11
2.3 Scope
Product Range: Define the types of products that will be sold on the website.
Data Management – Maintain all purchases records that order by the users.
Platform and Devices: Specify the platforms and devices the website will support (desktop,
mobile, tablet).
Payment Methods: List the accepted payment methods (credit cards, digital wallets, cash on
delivery etc.).
User Registration and Accounts: Allow customers to create accounts, manage profiles, and
track order history.
Mobile Commerce: Ensure mobile responsiveness and provide a seamless shopping experience
on smartphones and tablets.
12
1.3 Objectives of System
The main objective of Historical E-commerce websites development is to sell
products to users.
To achieve a high percentage of purchases.
To achieve success e-commerce websites, during the purchasing process,
making the checkout smooth and easy, making the website fast and attractive,
up selling users on related products.
To make secure transaction while shopping.
User Experience Enhancement.
To maintain all records in our database management.
13
CHAPTER 3 : ANALYSIS & DESIGN
3.1 Entity Relationship Diagram
14
3.2 Use Case Diagrams
15
2. Customer Use Case –
16
3.3 Activity Diagram
17
3.4 Class Diagram
18
3.5 Module Hierarchy Diagram
19
3.6 Table specifications (Database design)
1) Table Name: Product
Description: to add product
Primary key: id
Field Name Data Type Size Constraint Description
id int 5 Primary Key Product id
name VARCHAR 15 NOT NULL Product Name
Price VARCHAR 15 NOT NULL Product Price
description VARCHAR 15 NOT NULL Product
Description
countInStock VARCHAR 15 NOT NULL No. of
Product in
stock
category VARCHAR 15 NOT NULL Product
Category
brand VARCHAR 15 NOT NULL Product
Brand
rating VARCHAR 15 NOT NULL Product
Rating
image VARCHAR 15 NOT NULL Product
image
20
2) Table Name: user
Description: user login
Primary key: id
Field Name Data Type Size Constraint Description
id int 5 Primary Key User id
name VARCHAR 15 NOT NULL User Name
email VARCHAR 15 NOT NULL User Email
password VARCHAR 15 NOT NULL User
Password
3) Table Name: orders
Description: order history
Primary key: id
Field Name Data Type Size Constraint Description
Id int 5 Primary Key Order Id
date VARCHAR 15 NOT NULL Order date
total VARCHAR 15 NOT NULL Order total
price
isPaid bool 15 NOT NULL Payment
Done or not
isDeilvered bool 15 NOT NULL Product
Delivered or
not
21
3.5 Data Dictionary
Sr Field Name Description Data Constraint Table Name
No Type
id User Id int Primary key
name User Name varchar Not Null
Email User Email varchar Not Null Users
Password User Password varchar Not Null
2 id Product id int Primary key
name Product name varchar Not Null
category Product catetory varchar Not null
image Product image varchar Not null
price Product price varchar Not null Products
countInStock Product in stock varchar Not null
Brand Product brand varchar Not null
name
Rating Product rating varchar Not null
description Product varchar Not null
description
3 Id Order Id int Foreign Key
date Order date varchar Not null
total Order total price varchar Not null
isPaid Payment Done bool Not null Orders
or not
isDelivered Product bool Not null
Delivered or not
22
1.1 Test Cases
Test Test Expecte Actual Pass
Test steps / Test data result /fail
Case Description navigation steps d result
ID / summery
TC- verify the NA App opens all all file pass
01 functionalit 1) browse
through options are are
home page
y of home available and all loaded
2) check if
page file are loaded succes
all files
sfully
from
internal
storage are
loaded
TC- verify the Validation Admin should admin pass
Click on the
02 functionalit login login login
button
y of Admin with
Login with valid
valid crede
credential ntials
TC- verify the Validation Admin should not admin fail
Click on the
03 functionalit login login login
button
y of Admin with
Login invalid
credent
ials
TC- verify the Validation User should login user pass
Click on the
04 functionalit login button login
y of User with
Login valid
credent
ials
23
TC- verify the Validation User should login fail
Click on the user
05 functionalit login button login
with
y of User invalid
Login credenti
als
Button
TC- verify the Select the Display added pass
Click on the add Add to
to cart button product data in cart cart
06 functionalit product to
successf
y of user purchase ul
can buy
product
TC- verify the Fill the User added pass
Click on the Signup
signup button successfully in successf
07 functionalit personal
database ully
y of user information
register
TC- verify the Transaction Order id pass
Click on the pay Ordered
button Generation Successf
08 functionalit must be done
Successfully ully
y of product
ordered
TC- verify the Transaction Order id pass
Click on the pay Payment
button Generation Successf
09 functionalit can be done
Successfully ully
y of order
payment
after
unsuccessfu
l transcation
TC- verify the Click on edit Order status Order delivered fails
action to change Deilvere
status status change to d
10 functionalit should
green Successf
y of order change ully
isdelivered
24
CHAPTER 4 : USER MANUAL
4.1 User Interface Screens
Home Screen
Sign in Screen
25
Signup Screen
Cart Screen
26
4.2 Output Screens with data
Current user order history
27
All Ordered History
28
4.2 Data Reports
1.Database: rakshay, Table: users
2. Database: rakshay, Table: products
29
3. Database: rakshay, Table: orders
30
4.3 Sample program code
Server.js –
import express from 'express';
import mongoose from 'mongoose';
import dotenv from 'dotenv';
import productRouter from
'./routers/productRouter.js'; import userRouter from
'./routers/userRouter.js'; import orderRouter from
'./routers/orderRouter.js';
dotenv.config();
const app = express();
app.use(express.json());
app.use(express.urlencoded({ extended: true}));
mongoose.connect(process.env.MONGODB_URL || 'mongodb://localhost/rakshay',
{ useNewUrlParser: true,
useUnifiedTopology: true,
useCreateIndex: true,
});
app.use('/api/user', userRouter);
app.use('/api/products', productRouter);
app.use('/api/orders', orderRouter);
app.get('/api/config/paypal', (req, res) => {
res.send(process.env.PAYPAL_CLIENT_ID || 'sb');
});
app.get('/', (req, res) =>
{ res.send('Server
Started');
});
app.use((err, req, res, next) =>
{ res.status(500).send({ message: err.message });
});
const port = process.env.PORT || 5000;
app.listen(port, () => {
console.log(`Serve at http://localhost:${port}`);
});
31
Utils.js
import jwt, { decode } from 'jsonwebtoken';
export const generateToken = (user) => {
return jwt.sign({
_id: user._id,
name: user.name,
email: user.email,
isAdmin: user.isAdmin,
}, process.env.JWT_SECRET || 'somethingsecret',
{
expiresIn: '30d',
});
};
export const isAuth = (req, res, next) => {
const authorization = req.headers.authorization;
if (authorization) {
const token = authorization.slice(7, authorization.length); // Bearer XXXXXX
jwt.verify(
token,
process.env.JWT_SECRET || 'somethingsecret',
(err, decode) => {
if (err) {
res.status(401).send({ message: 'Invalid Token' });
} else {
req.user = decode;
next();
}
});
} else {
res.status(401).send({ message: 'No Token' });
32
Limitations and Bibliography
Limitations:
1. Product category – Types of products to add in different category.
2. Order Tracking – Cannot track order location.
3. Admin Side Module – Add, modify, delete product using UI, manage user.
4. Order Cancellation – Order cancellation option not present.
Bibliography:
1. YouTube
2. W3school
3. GitHub
4. React.js
5. MongoDB
6. Stack Overflow
33