Final Project Report
Final Project Report
Supervised By Submitted By
Mr. Deepak Kaushik Nawal Kumar
Assistant Professor BCA-CTIS VI Sem
Department of Computer Applications 210187018
2021-2024
Acknowledgement
A successful completion of this project is attributed to the great and indispensable help
received from different people.
I will always be grateful and thankful to Head of Department Dr. Dinesh Verma and
Project Mentor Mr. Deepak Kaushik for giving me the opportunity to learn the different
aspects of designing and implementing this system. It would never be possible for me to
design this system without your continuous assistance and guidance.
Nawal Kumar
1
Declaration
2
Department of Computer Applications
Certificate
It is certified that Ms. Nawal Kumar, a student of Bachelor of Computer Applications,
under class Roll No. 21831 and University Roll No. 210187018 for the Session 2021-2024,
has completed the project entitled “E-Bharat: Ultimate E-commerce Hub” under my
supervision.
The project report is the authenticate work of the candidate as per her declaration and is
found to be fit for the award of degree of Bachelor of Computer Applications in accordance
with the rules and regulations of Kurukshetra University, Kurukshetra as per my opinion.
Deepak Kaushik
Assistant Professor
Counter-signed by
HOD-Computer Applications
3
List of figures
4.4 DFD-0 28
4.4.1 DFD-1 28
4.4.2 DFD-2 29
6.4 Testimonials 42
4
6.6 Add product 43
5
Table of Content
Acknowledgement
Declaration 2
Certificate from the Department 3
List of Figures 4
Chapter 1 Project Description 9
1.1 Project Title 10
1.2 Overview 10
1.3 Need and Purpose 11
1.3.1 Need 11
1.3.2 Purpose 11
1.3.3 Benefits 12
1.4 Hardware Requirements 12
1.5 Software Requirements 13
1.6 Application Architecture 13
1.7 Features 14
Chapter 2 Feasibility Study 16
2.1 Overview 17
2.2 Technical Feasibility 17
2.3 Economic Feasibility 18
2.4 Legal Feasibility 18
2.5 Operational Feasibility 19
2.6 Scheduling Feasibility 19
Chapter 3 Requirement Analysis 20
3.1 Overview 21
3.2 System Analysis 21
3.3 Requirement study/analysis 22
3.3.1 Present System & Identification of Needs 22
3.4 Software Requirement Analysis 24
Chapter 4 System Design 25
6
4.1 Overview 26
4.2 Entity-Relationship Diagram 27
4.3 Activity Diagram 28
4.4 Data Flow Diagrams 29
4.4.1 0-Level DFD 29
4.4.2 2-Level DFD 30
Chapter 5 Implementation 31
5.1 Software Used 32
5.2 Hardware Specification 32
5.3 Platform 32
5.4 Works/Contribution by me in this e-commerce
website named “E-Bharat” 32
5.5 My Code Snippets
5.5.1Firebase Configuration 33
5.5.2 [Link] 34
5.5.3 [Link] 36
5.5.4 [Link] 38
7
Chapter 1
Project Description
8
Chapter 2 Project Description
1.2 Overview
Admin: The backbone of the platform, the admin oversees all operations, ensuring smooth
functioning and optimal performance. They have full control over the system, managing accounts,
product listings, transactions, and resolving any issues promptly.
Buyer: The heart of E-Bharat, buyers enjoy a personalized shopping experience with access to a
diverse range of products, competitive prices, and secure payment options. They can explore
categories, read reviews, compare products, and make purchases hassle-free.
E-Bharat's key features include:
Advanced Search: A powerful search functionality enables users to find products quickly based
on keywords, categories, brands, and more, enhancing the overall shopping experience.
Secure Transactions: 1With robust security measures in place, E-Bharat ensures that all
transactions are encrypted and protected, giving users peace of mind while making purchases
online.
9
Interactive Communication: Seamless communication channels facilitate interaction between
buyers and sellers, fostering trust and transparency in transactions. Users can ask questions, seek
assistance, and provide feedback effortlessly.
E-Bharat is not just a marketplace; it's a vibrant community where commerce thrives, innovations
flourish, and connections are made. Join us on E-Bharat and experience the ultimate e-commerce
hub where possibilities are limitless, and satisfaction is guaranteed.
1.3.3 Benefits:
Minimal Paperwork: E-Bharat eliminates the need for extensive paperwork traditionally
associated with retail operations, reducing administrative burdens for sellers and streamlining
processes.
Time-Saving: By providing a centralized platform for buying and selling, E-Bharat saves time for
both sellers and buyers, allowing them to focus on core business activities and making purchases
without the constraints of physical shopping.
User-Friendly Interface: E-Bharat offers a user-friendly interface designed to enhance the
shopping experience, making it easy for users to navigate, search for products, and make purchases
with confidence.
Cost-Effective: Operating on a digital platform significantly reduces overhead costs associated
with maintaining physical stores, allowing sellers to offer competitive prices to customers while
maximizing profitability.
11
1.5 Software Requirements
▪ Compatible Browsers : Chrome, Firefox, Opera
▪ Languages : HTML, CSS, JavaScript, ReactJs
,Redux
▪ Database : Firebase
▪ IDE : Visual Studio code
▪ Designing Tools : TailwindCSS, Material UI
The architecture of our e-commerce platform, leveraging modern technologies such as HTML,
CSS, JavaScript, Tailwind CSS, [Link], Firebase, Redux, Material UI, and Razorpay, follows a
Three-Tier Architecture model to ensure efficiency, scalability, and seamless user experience.
Presentation Tier:
• The Presentation tier serves as the front-end of the platform, providing an interactive and
visually appealing interface for users.
• Developed using HTML, CSS, and JavaScript, along with Tailwind CSS for streamlined
styling and [Link] for dynamic and responsive user interfaces.
• Material UI components enhance the presentation layer with pre-designed, customizable UI
elements for consistency and usability.
• Tailwind CSS facilitates rapid development and customization of user interface
components, ensuring a modern and intuitive browsing experience.
• [Link] enables the creation of interactive, single-page applications (SPAs), enhancing
performance and reducing page load times by dynamically updating content without full
page refreshes.
• Users interact with the Presentation tier to browse products, add items to their carts, initiate
checkout processes, and manage their accounts.
Application Tier:
• The Application tier, also known as the middle-tier or logic-tier, contains the core business
logic and functionalities of the platform.
• It is responsible for processing user requests, handling business logic, and managing
application state using Redux for state management.
12
• Firebase serves as the backend-as-a-service (BaaS) platform, providing authentication, real-
time database capabilities, and cloud functions for serverless computing.
• Redux facilitates predictable state management, enabling efficient data flow and centralized
state management across the application.
• Application tier components interact with the Presentation tier to receive user input, execute
business logic, update application state, and provide responses to user actions.
• Razorpay integration enables secure and seamless payment processing, allowing users to
complete transactions using various payment methods securely.
Data Tier:
• The Data tier, powered by Firebase Realtime Database, handles data storage and retrieval
operations.
• Firebase Realtime Database provides a scalable, NoSQL cloud database solution for storing
product information, user profiles, order details, and other application data.
• It offers real-time synchronization and offline support, ensuring data consistency and
availability across devices and network conditions.
• Data tier components interact with the Application tier to fetch and update data, synchronize
changes in real-time, and maintain data integrity throughout the application.
1.7 Features
Features Description
13
Create Registered users can create their accounts by providing basic
Account
information like name, username, and password. This account
information is used for login purposes.
Cart and Users can add products to their cart for future purchase and proceed
Checkout
to checkout to complete the transaction securely.
User
Authentication Secure user authentication and authorization mechanisms are
and implemented to ensure the confidentiality and integrity of user
Authorization
Module accounts and data.
Payment
Gateway Integration with payment gateways such as Razorpay ensures seamless
Integration and secure payment processing for user transactions.
Import Data Admins can import data, such as product information and user details,
from local files to the platform's database. This feature streamlines the
process of transferring data to the e-commerce platform.
Home page The home page or menu provides users with easy navigation to
and Menu browse products, access product categories, apply filters, view
testimonials, and explore other features of the platform
NightScape Users can switch between dark and light interface themes based on
Module
their preferences for enhanced readability and visual comfort.
14
Chapter 2
Feasibility Study
15
Chapter 2 Feasibility Study
2.1 Overview
Feasibility analysis stands as the cornerstone in determining the viability of a project, ensuring it
meets performance requirements. For E-Bharat: Ecommerce Hub, this study delves into whether
the project is feasible, serving as the initial design phase. It encompasses understanding all project
aspects, concept development, scoping, market valuation, cost-benefit analysis, and compatibility
with existing systems. This formal documentation provides a succinct overview of the project's
scope and objectives.
• Scope assessment
• Market trend analysis
• Comprehensive risk assessment
• Cost analysis
• Assessment and recommendations
Similar to the TELOS framework, technical, economic, legal, operational, and scheduling
dimensions are evaluated. These dimensions serve as the foundation for adding new modules and
debugging existing systems
For E-Bharat, ensuring technical feasibility involves assessing factors such as:
Legal feasibility ensures that the proposed system complies with all legal and ethical
requirements. It assesses potential violations of laws and ethical standards. Addressing ethical
and social issues is integral to this study. The primary objectives include:
17
2.5 Operational Feasibility
• Effectiveness in problem-solving
Scheduling feasibility evaluates whether the proposed system can be completed within the
scheduled time frame. It establishes deadlines for project completion and ensures adherence to
them. Meeting prescribed deadlines indicates the system's acceptability.
Feasibility analysis is not only about gathering information and determining requirements but also
about ensuring that the project is completed within the allocated time frame. Scheduling feasibility
plays a crucial role in determining project success.
18
Chapter 3
Requirement Analysis
19
Chapter 3 Requirement Analysis
3.1 Overview
This chapter delves into the critical analysis undertaken by developers during the
development of the E-Bharat ecommerce platform. It encapsulates the pivotal
observations and requirements necessary for the timely and successful completion of the
project. Before commencing any project, it is imperative to analyze various factors,
ensuring a robust foundation for development. The requirement analysis and specification
phase is initiated post-feasibility study, marking the project's economic and technical
feasibility. The primary objective of this phase is to comprehend customer requirements
thoroughly, essential for developing a system that aligns with their needs. The
culmination of this phase results in the Requirement Analysis Documentation (RAD), a
vital resource for developers to grasp the desired outcomes from the proposed system.
The System Requirement Specification (SRS) plays a pivotal role in project development,
detailing both functional and non-functional requirements
20
3.3 Requirement Analysis/Study
Requirement analysis is a crucial phase aimed at understanding user expectations for the
E-Bharat ecommerce platform. Gathering comprehensive information ensures that the
system meets user satisfaction, thus enhancing its usability and acceptance. This phase
requires frequent communication with customers/users to adapt to evolving requirements.
It is a collaborative effort, incorporating hardware, software, and customer-facing
expertise. Various fact-finding techniques are employed to gather system requirements
effectively.
The present system entails significant manual work for maintaining attendance records,
resulting in time inefficiencies and difficulty in accessing records promptly. To overcome
these challenges, the proposed E-Bharat platform aims to streamline operations, offering
real-time access to attendance records and facilitating efficient tracking and management.
21
Why we need this application?
The need for E-Bharat arises from the challenges inherent in traditional shopping methods and the
evolving demands of modern consumers. Here's why our ecommerce platform is indispensable:
Time Efficiency: With E-Bharat, browsing through a diverse range of products and making
purchases is just a few clicks away. Say goodbye to lengthy shopping trips and hello to
efficient, time-saving shopping experiences.
Accessibility: Accessibility is key, especially for individuals with mobility issues or those
residing in remote areas. E-Bharat bridges this gap by bringing the entire shopping experience
to your fingertips, ensuring accessibility for all.
24/7 Availability: Unlike physical stores with fixed operating hours, E-Bharat is available
24/7, allowing you to shop at your convenience, whether it's early morning or late at night.
Effortless Tracking and Management: Tracking orders, managing purchases, and accessing
past transaction history is simplified with E-Bharat's intuitive interface, saving you time and
effort.
Cost Savings: By eliminating the need for physical store infrastructure and overhead costs, E-
Bharat offers competitive pricing and exclusive deals, ensuring value for your money.
22
3.4 Software Requirement Analysis
The overarching goal of the E-Bharat ecommerce platform is to design a recommender system
tailored to the music domain. It will comprise server-side components managing database
operations and recommendation algorithms, alongside client-side interfaces seamlessly integrated
into larger systems.
23
Chapter 4
System Design
24
Chapter 4 System Design
4.1 Overview
This chapter encompasses the various design aspects related to our e-commerce project, E-
Commerce Hub. It includes Data Flow Diagrams (DFDs), Entity-Relationship Diagrams, the
structure of the database, Class Diagrams, and Activity Diagrams. Design serves as the
foundational step to understand the flow of data, input interfaces, and the appearance of output
screens.
Key points highlighting the importance of system design for E-Commerce Hub:
Understanding Data Flow: Design elucidates the flow of data within the system, facilitating a
clear comprehension of information exchange.
Visualizing Customer Expectations: Design aids in visualizing and aligning with customer
expectations, ensuring a user-centric approach.
Enhancing Productivity: Well-defined designs contribute to better productivity, streamlining
development processes.
Understanding System Activities: Design allows us to comprehend the activities performed
within the system, guiding the development process effectively.
Determining Entity Relationships: Design helps in determining the relationships between entities
within the system, ensuring accurate data management.
Facilitating Module Relationships: It aids in understanding the relationships between different
modules of the system, fostering seamless integration.
Leveraging Previous Phase Results: Designs build upon the results obtained from previous
phases, ensuring continuity and coherence in the development process.
Creating a Comprehensive System View: Design provides a holistic view of the system, enabling
stakeholders to grasp its intricacies and functionalities.
Identifying Design Issues: It reveals design issues and flaws early in the development cycle,
allowing for timely mitigation.
Visualizing Object Interaction: Designs facilitate the visualization of interactions between
objects within the system, guiding implementation strategies.
Guiding Code Implementation: Design serves as a blueprint for code implementation, providing
25
a roadmap for developers to follow.
In essence, system design is paramount for E-Commerce Hub as it lays the groundwork for a
seamless, user-friendly shopping experience, aligning with industry standards and customer
expectations
4.2 Entity-Relationship Diagram
The diagram shows entities and their relationship for a E-BHARAT. We have a user
of a system who can have their name, phone, Account details etc. It can be used to
store any information about product and also add to Cart.
26
4.3 ACTIVITY DIAGRAM
27
4.4 Data Flow Diagram
DFD Level 0 (Context Level Diagram)
• 4.4.1DFD Level 1
28
• 4.4.2 2nd Level – Admin side DFD
29
Chapter 5
Implementation
30
Chapter 5 Implementation
▪ Database : Firebase
▪ RAM - 1 GB
5.3 Platform
[Link] Management:
• Managed the integration with Firebase for database storage and real-time data
synchronization.
• Designed and optimized database schemas to support efficient data retrieval and storage
operations.
// Initialize Firebase
const app = initializeApp(firebaseConfig);
5.5.2 [Link]
import React from 'react'
import {
BrowserRouter as Router,
Route,
Routes,
Navigate,
} from "react-router-dom";
)
}
// user
// admin
5.5.3 [Link]
function ProductCard() {
const context = useContext(myContext)
const { mode, product ,searchkey, setSearchkey,filterType,setFilterType,
filterPrice,setFilterPrice} = context
useEffect(() => {
35
[Link]('cart', [Link](cartItems));
}, [cartItems])
return (
<section className="text-gray-600 body-font">
<div className="container px-5 py-8 md:py-16 mx-auto">
<div class="lg:w-1/2 w-full mb-6 lg:mb-10">
<h1 class="sm:text-3xl text-2xl font-medium title-font mb-2 text-gray-
900" style={{ color: mode === 'dark' ? 'white' : '' }}>Our Latest Collection</h1>
<div class="h-1 w-20 bg-pink-600 rounded"></div>
</div>
</div>
</div>
</div>
</div>
)
})}
</div>
</div>
</section >
)
}
5.5.4 [Link]
function Dashboard() {
const context = useContext(myContext)
const { mode} = context
37
return (
<Layout>
<section className="text-gray-600 body-font mt-10 mb-10">
<div className="container px-5 mx-auto mb-10">
<div className="flex flex-wrap -m-4 text-center">
<div className="p-4 md:w-1/4 sm:w-1/2 w-full">
<div className=" border-2 hover:shadow-purple-600 shadow-
[inset_0_0_10px_rgba(0,0,0,0.6)] bg-gray-100 border-gray-300 px-4 py-3 rounded-xl" style={{
backgroundColor: mode === 'dark' ? 'rgb(46 49 55)' : '', color: mode === 'dark' ? 'white' : '', }} >
<div className="text-purple-500 w-12 h-12 mb-3 inline-block" viewBox="0 0 24
24">
<FaUserTie size={50} />
</div>
<h2 className="title-font font-medium text-3xl text-black fonts1" style={{ color:
mode === 'dark' ? 'white' : ''}}>10</h2>
<p className=" text-purple-500 font-bold" style={{ color: mode === 'dark' ?
'white' : ''}}>Total Products</p>
</div>
</div>
<div className="p-4 md:w-1/4 sm:w-1/2 w-full">
<div className=" border-2 hover:shadow-purple-600 shadow-
[inset_0_0_10px_rgba(0,0,0,0.6)] bg-gray-100 border-gray-300 px-4 py-3 rounded-xl" style={{
backgroundColor: mode === 'dark' ? 'rgb(46 49 55)' : '', color: mode === 'dark' ? 'white' : '', }}>
<div className="text-purple-500 w-12 h-12 mb-3 inline-block" viewBox="0 0 24
24"> <FaUserTie size={50} />
</div>
<h2 className="title-font font-medium text-3xl text-black fonts1" style={{ color:
mode === 'dark' ? 'white' : ''}}>10</h2>
<p className=" text-purple-500 font-bold" style={{ color: mode === 'dark' ?
'white' : ''}}>Total Orders</p>
</div>
</div>
<div className="p-4 md:w-1/4 sm:w-1/2 w-full">
38
<div className=" border-2 hover:shadow-purple-600 shadow-
[inset_0_0_10px_rgba(0,0,0,0.6)] bg-gray-100 border-gray-300 px-4 py-3 rounded-xl" style={{
backgroundColor: mode === 'dark' ? 'rgb(46 49 55)' : '', color: mode === 'dark' ? 'white' : '', }} >
<div className="text-purple-500 w-12 h-12 mb-3 inline-block" viewBox="0 0 24
24"> <FaUserTie size={50} />
</div>
<h2 className="title-font font-medium text-3xl text-black fonts1" style={{ color:
mode === 'dark' ? 'white' : ''}}>20</h2>
<p className=" text-purple-500 font-bold" style={{ color: mode === 'dark' ?
'white' : ''}}>Total Users</p>
</div>
</div>
<div className="p-4 md:w-1/4 sm:w-1/2 w-full">
<div className=" border-2 hover:shadow-purple-600 shadow-
[inset_0_0_10px_rgba(0,0,0,0.6)] bg-gray-100 border-gray-300 px-4 py-3 rounded-xl" style={{
backgroundColor: mode === 'dark' ? 'rgb(46 49 55)' : '', color: mode === 'dark' ? 'white' : '', }}>
<div className="text-purple-500 w-12 h-12 mb-3 inline-block" viewBox="0 0 24
24">
<FaUserTie size={50} />
</div>
<h2 className="title-font font-medium text-3xl text-black fonts1" style={{ color:
mode === 'dark' ? 'white' : ''}}>20</h2>
<p className=" text-purple-500 font-bold" style={{ color: mode === 'dark' ?
'white' : ''}}>Total Products</p>
</div>
</div>
</div>
</div>
<DashboardTab/>
</section>
</Layout>
)
}export default Dashboard
39
Chapter 6
Snapshots
40
Chapter 6 Snapshots
41
6.3 Admin Dashboard
6.4 Testimonial
42
6.5 Check out Page
43
Chapter 7
Future Scope
and Conclusion
44
Chapter 7 Future Scope and Conclusion
7.1 Conclusion
In the rapidly evolving digital landscape, where technological advancements have become integral
to daily operations, the implementation of digital solutions has become paramount across various
sectors. Our e-commerce platform, E-Bharat, stands as a testament to this digital transformation,
offering a seamless online shopping experience to users.
Transitioning from traditional brick-and-mortar stores to an online platform brings forth numerous
benefits, addressing key challenges and enhancing efficiency in several ways. E-Bharat not only
streamlines the shopping process but also offers a plethora of features designed to cater to the
evolving needs of modern consumers.
By leveraging digital platforms like E-Bharat, we can effectively reduce paper usage and manual
labor associated with traditional retail practices. Additionally, the system's capability to handle
operations such as data filtration and report generation simplifies administrative tasks, allowing for
more efficient management of resources.
In today's fast-paced world, where time is of the essence, E-Bharat provides a user-friendly
environment that enables users to access products and services conveniently from anywhere with
an internet connection. The system's ability to import data seamlessly from external sources further
enhances its usability, saving time and effort for both users and administrators
45
7.2 Future Scope
Looking ahead, the future of E-Bharat holds immense potential for further innovation and growth.
As digitalization continues to permeate every aspect of our lives, the e-commerce sector is poised
for significant expansion and evolution.
In the coming years, we envision E-Bharat becoming an integral part of the digital ecosystem,
aligning seamlessly with emerging trends and technologies in the e-commerce industry. Some
potential avenues for future development include:
46
Bibliography
• [Link]
• [Link]
• [Link]
• [Link]
• [Link]
• [Link]
• [Link]
47