0% found this document useful (0 votes)
177 views10 pages

E-Commerce Website Using MERN Stack

This document is a mini project report on developing an e-commerce website using the MERN stack (MongoDB, Express, React, Node). It includes sections that describe e-commerce and the MERN stack in detail. It then outlines the features of the e-commerce web application developed, including the home page, login/signup system, admin and user dashboards, shop pages, and cart functionality integrated with a payment gateway. The conclusion discusses future enhancements that could be made.

Uploaded by

Gòwthám Reddy
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
177 views10 pages

E-Commerce Website Using MERN Stack

This document is a mini project report on developing an e-commerce website using the MERN stack (MongoDB, Express, React, Node). It includes sections that describe e-commerce and the MERN stack in detail. It then outlines the features of the e-commerce web application developed, including the home page, login/signup system, admin and user dashboards, shop pages, and cart functionality integrated with a payment gateway. The conclusion discusses future enhancements that could be made.

Uploaded by

Gòwthám Reddy
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

A

MINI PROJECT REPORT


on
E-COMMERCE WEBSITE USING MERN STACK
BACHELOR OF TECHNOLOGY
in
COMPUTER SCIENCE AND ENGINEERING
Submitted by
(MIP-01)
Student Name : 187Y1A05D4

Under the Guidance

of

Mr.
Assistant Professor

DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING


MARRI LAXMAN REDDY
INSTITUTE OF TECHNOLOGY AND MANAGEMENT
(AUTONOMOUS)

(Affiliated to JNTU-H, Approved by AICTE New Delhi and Accredited by NBA & NAAC With ‘A’ Grade)

April 2021

MINI PROJECT REPORT (2018-2022 Batch) Dept. of CSE, MLRITM i


CERTIFICATE

This is to certify that the project report titled “E-Commerce Website Using MERN Stack” is

being submitted by Ravula Gowtham Reddy (187Y1A05D4) in IV [Link] II Semester

Computer Science & Engineering is a record bonafide work carried out by him. The

results embodied in this report have not been submitted to any other University for the

award of any degree.

Internal Guide HOD

Principal External Examiner

MINI PROJECT REPORT (2018-2022 Batch) Dept. of CSE, MLRITM ii


DECLARATION

I hereby declare that the Major Project Report entitled, “E-Commerce Website Using

MERN Stack” submitted for the [Link] degree is entirely my work and all ideas and

references have been duly acknowledged. It does not contain any work for the award of

any other degree.

Date:

Ravula Gowtham Reddy


(187Y1A05D4)

MINI PROJECT REPORT (2018-2022 Batch) Dept. of CSE, MLRITM iii


ACKNOWLEDGEMENT

I am happy to express my deep sense of gratitude to the principal of the college Dr. K.
Venkateswara Reddy, Professor, Department of Computer Science and Engineering,
Marri Laxman Reddy Institute of Technology & Management, for having provided me
with adequate facilities to pursue my project.

I would like to thank Mr. Abdul Basith Khateeb, Assoc. Professor and Head, Department
of Computer Science and Engineering, Marri Laxman Reddy Institute of Technology &
Management, for having provided the freedom to use all the facilities available in the
department, especially the laboratories and the library.

I am very grateful to my project guide Mr. Prasad Banoth, Assoc. Prof., Department of
Computer Science and Engineering, Marri Laxman Reddy Institute of Technology &
Management, for his extensive patience and guidance throughout my project work.

I sincerely thank my seniors and all the teaching and non-teaching staff of the Department
of Computer Science for their timely suggestions, healthy criticism and motivation during
the course of this work.

I would also like to thank my classmates for always being there whenever I needed help or
moral support. With great respect and obedience, I thank my parents and brother who were
the backbone behind my deeds.

Finally, I express my immense gratitude with pleasure to the other individuals who have
either directly or indirectly contributed to my need at right time for the development and
success of this work.

CONTENTS

MINI PROJECT REPORT (2018-2022 Batch) Dept. of CSE, MLRITM iv


S NO. TITLE PAGE NO.
ABSTRACT Vi
LIST OF FIGURES Vii
LIST OF TABLES Viii
SYMBOLS & ABBREVIATIONS IX

1 INTRODUCTION 1

2 E-COMMERCE 8
2.1 Definition 8
2.2 Types 10
2.3 Advantages 11
2.4 Challenges 11

3 MERN Stack 13
3.1 JavaScript 13
3.2 NodeJS 13
3.3 [Link] 19
3.4 MangoDB 20
3.5 ReactJS 21
3.5.1 Virtual-DOM
3.5.2 Component
3.5.3 Props and State
3.5.4 Pros and Cons of RactJS
3.6 MERN Stack in Website Development
3.6.1 Concept of Stack technology

3.6.2 Concept of MERN Stack

3.6.3 Highlights in MERN Stack

MINI PROJECT REPORT (2018-2022 Batch) Dept. of CSE, MLRITM v


4 E-commerce Web Application 33
4.1 Home Page

4.2 Login System

4.2.1 Sign Up

4.2.2 Sign In

4.3 Dashboard

4.3.1 Admin Dashboard

4.3.2 User Dashboard

4.4 Shop Page

4.5 Cart Page

4.5.1 Cart CRUD

4.5.2 Payment Gateway

7 CONCLUSION AND FUTURE ENHANCEMENTS 43

8 REFERENCES 44
APPENDIX A 45
APPENDIX B 51
APPENDIX C 54

ABSTRACT

In today's generation, most people are using technology for leading their lives and fulfilling their daily

needs. In this generation most of us using E-commerce websites for shopping for clothes, groceries,

MINI PROJECT REPORT (2018-2022 Batch) Dept. of CSE, MLRITM vi


and electronics . We have developed one E-commerce web application by using MERN stack

technology as it contains MongoDB, [Link] framework, [Link] library, [Link] platform. This

application is fully functional with different views for user and admin and it also has integrated with

payment gateway for checkout. By using this website we can buy different types of t-shirts and we

can choose different styles of t-shirts based upon customer interests. In this project, we can add

different products and can delete them also. We have developed administrative functions for the

website such as create a product, create categories, Admin dashboard, Manage products, Manage

categories. For customers, they can quickly add their items to the cart. Based on the items in the cart

then the bill gets generate and the customer can pay by using stripe .

LIST OF FIGURES

FIG. NO FIG. NAME PAGE NO.


1.1 Internet Of Things 4
1.2 Wireless Sensor Network (WSN) 5

MINI PROJECT REPORT (2018-2022 Batch) Dept. of CSE, MLRITM vii


3.1 Arduino Atmega 328(UNO) 15
3.2 Arduino Ethernet Shield 16
3.3 ML8511 UV Sensor 16
3.4 DHT11 Temperature and Humidity Sensor 17
3.5 MQ3 Gas Sensor 17
3.6 Water Level Sensor 18
3.7 5V Solar Panel 18
3.8 Rechargeable Li Ion Battery 19
3.9 Architecture Of The Setup 19
3.10 Flow Chart Of The System 20
4.1 Essential Use Case Diagram 24
4.2 Class Diagram 25
4.3 Sequence Diagram 26
4.4 Activity Diagram 27

4.5 Collaboration Diagram 27


Smart Farm Using Renewable Energy Resources Circuit
4.6 Diagram 34

5.1 Block Diagram 33

5.2 Arduino Microcontroller 34

LIST OF TABLES

TABLE NO. TABLE TITLE PAGE NO.

3.1 Software Requirements 14


3.2 Hardware Requirements 14
MINI PROJECT REPORT (2018-2022 Batch) Dept. of CSE, MLRITM viii
5.1 Summary 35
6.1 Above prescribed (favorable) levels 41
6.2 Below Threshold Level Use Case 42

SYMBOLS & ABBREVIATIONS

DOM : Document Object Model

ISO : International Organization for Standardization

MINI PROJECT REPORT (2018-2022 Batch) Dept. of CSE, MLRITM ix


NPM : Node Package Manager

API : Application Program Interface

HTM : Hypertext Markup Language


L

HTTP : Hypertext Transfer Protocol

URL : Uniform Resource Locator

JSON : JavaScript Object Notation

JS : JavaScript

JSX : JavaScript XML

XML : Extensive Markup Language

MINI PROJECT REPORT (2018-2022 Batch) Dept. of CSE, MLRITM x

Common questions

Powered by AI

Using the MERN stack over a traditional LAMP stack for e-commerce development offers several advantages, primarily in uniform language utilization (JavaScript) across the entire stack, which reduces cognitive load and improves developer productivity . The modular nature of the MERN stack supports modern Single Page Applications (SPAs) that provide better user experiences. MongoDB's flexibility as a NoSQL database is suited to dynamic e-commerce data, unlike MySQL's rigid structure in LAMP . However, disadvantages include the complexity of handling full JavaScript-based applications and the relative novelty of the MERN stack, which may have less mature community support than LAMP. Additionally, integrating real-time data interactions, while supported in Node.js, can require more intricate handling compared to PHP in certain use cases .

Developers might face several challenges when implementing the login system in a MERN stack-based e-commerce website. They need to ensure secure handling of user credentials, often requiring integration with authentication libraries like Passport.js or implementing JWT for token-based authentication systems, which can be complex to set up correctly . Cross-site scripting (XSS) and other security vulnerabilities must be mitigated to protect sensitive user information . Handling secure session management and user password encryption are additional layers that add complexity to the development process. Ensuring a seamless user experience that integrates well with various third-party services without affecting application performance is another potential challenge .

MongoDB enhances data management in an e-commerce application by providing a document-oriented database structure that allows for flexible data models adaptable to various product formats without requiring extensive schema changes . Its capability to handle large datasets efficiently supports scalable e-commerce operations as data grows in size and complexity, such as user profiles, order histories, and inventory records . Additionally, MongoDB's ability to perform quick read and write operations supports real-time data interactions within the application, which is crucial for updating inventory dynamically and processing transactions fast . The database's support for distributed architectures also aids in redundancy and data recovery, ensuring reliability in e-commerce services .

The MERN stack's architecture offers several benefits for building scalable e-commerce applications. Its components—MongoDB, Express.js, ReactJS, and Node.js—are all optimized for scalability and performance. MongoDB's schema-less structure supports flexible product catalog management and horizontal scaling . Node.js, with its non-blocking I/O model, provides performance efficiency for handling multiple requests, a common requirement in large-scale applications . Express.js offers a lightweight framework for building APIs, facilitating seamless data flow between the frontend and backend . ReactJS allows for responsive and modular user interfaces that can scale as user demand increases, ensuring high performance with growth . This integration of technologies ensures that MERN stack applications can scale effectively to accommodate expanding business needs and traffic .

Integrating a payment gateway into an e-commerce application is significant as it facilitates secure and convenient financial transactions, crucial for customer trust and conversion rates . Payment gateways encrypt sensitive information, protecting against fraud and ensuring compliance with security standards, such as PCI-DSS . However, challenges include handling transaction errors, ensuring seamless integration across different gateways to accommodate various payment methods, and maintaining a reliable, fault-tolerant service. Furthermore, interfacing the payment gateway with the application backend, while ensuring it integrates smoothly with the checkout process without introducing latency or complexity into the user experience, can be technically demanding .

Node.js contributes to performance optimization in e-commerce websites by utilizing its event-driven, non-blocking I/O model. This allows it to handle concurrent operations efficiently, which is beneficial for transaction-heavy e-commerce platforms . Node.js can manage thousands of simultaneous connections with high throughput, characteristic of online shopping environments where users might be adding items to carts, making payments, or browsing products concurrently . Its lightweight nature and ability to run asynchronous processes further enhance responsiveness and reduce latency, ensuring a smooth user experience .

ReactJS enhances user experience on e-commerce websites by allowing the creation of responsive and interactive interfaces. It uses virtual DOM to efficiently update and render components as user interactions occur, minimizing performance lags . React’s component-based architecture allows developers to reuse code effectively, making updates seamless without disrupting the user experience . Properties and states in React provide dynamic rendering capabilities where the interface changes based on user inputs and actions, facilitating a personalized shopping journey on e-commerce platforms .

Implementing an e-commerce platform using the MERN stack presents several challenges. One major issue is managing server-side and client-side dependencies due to the complex nature of maintaining a full JavaScript stack, which can complicate debugging and coordination between different stack layers . Another challenge is ensuring security, as full-stack JavaScript applications can be vulnerable to various attacks if not properly safeguarded with best practices for authentication and data protection. Performance can also be a concern, particularly with large-scale applications that require efficient data handling and transaction processing, necessitating optimizations and scaling strategies . Additionally, integrating with third-party services like payment gateways and ensuring they work seamlessly within the MERN architecture can require significant development effort .

Component-based architecture in ReactJS enhances maintainability and scalability of e-commerce applications by allowing developers to compartmentalize application features into reusable and independent components . This modular approach means changes to one part of the application (e.g., a product detail component) do not inadvertently affect others (e.g., the overall shopping cart component), thereby simplifying updates and debugging . As applications grow, components can be added, removed, or refactored independently, facilitating scalability. This architecture supports developers in enhancing specific parts of the user interface for performance without rewriting entire sections, providing agility in responding to business needs .

The MERN stack offers several advantages for developing e-commerce websites. Firstly, it leverages full-stack JavaScript capabilities which enable using a single language across server and client, simplifying development and coordination . Secondly, MongoDB, as a NoSQL database, provides high flexibility and scalability for handling large volumes of diverse product information typical in e-commerce platforms . Thirdly, ReactJS facilitates dynamic and interactive user interfaces, enhancing user experience on e-commerce platforms . Finally, Node.js optimizes real-time operations and data-intensive applications typical in e-commerce transactions, contributing to a seamless performance .

You might also like