Final
Final
Final
Submitted by:
Sabrina Karim Riya
ID: 1903610201812
Md Ehsanul Haque Efti
ID: 1903610201780
Pinky Debi
ID: 1903610201756
Supervised by
Md. Neamul Haque
Lecturer
Department of Computer Science & Engineering, Premier University
i
April 2024
Premier University
Department of Computer Science & Engineering
Certificate of approval
The project titled “Interactive E-commerce Platform with Real-time Text Emotion Detection”
submitted by Sabrina Karim Riya, Md Ehsanul Haque Efti and Pinky Debi in Aprile 2024 has
been accepted as satisfactory in partial fulfillment of the requirement for the degree of
Bachelor of Science in Computer Science & Engineering (CSE) as B.Sc. (Eng.) to be
awarded by Premier University.
………………………………….
Prof. Dr. Shahid Md. Asif Iqbal
Chairman
Department of Computer Science and Engineering
Premier University, Chattogram
………………………………….
Md. Neamul Haque (Supervisor)
Lecturer
Department of Computer Science and Engineering
Premier University, Chattogram
ii
Premier University
Department of Computer Science & Engineering
Declaration
This project report is submitted to the Computer Science and Engineering, Premier
University, Chattogram in partial fulfillment of the requirements for the degree of Bachelor of
Science. So, we hereby, declare that this project report is based on the surveys found by us.
Materials of work found by other researchers are mentioned by reference. This project report,
neither in whole nor in part, has been previously submitted for any degree.
iii
ID: 1903610201812 ID: 1903610201780 ID: 1903610201756
iv
Dedicated to
Our Respected Teachers & Parents
4
ACKNOWLEDGEMENT
We would like to thank who helped us in the process of completing this project. First, we
would like to express our gratitude to Almighty Allah. Then we would like to thank our
honorable supervisor, Md. Neamul Haque, Lecturer, Department of Computer Science &
Engineering, Premier University, Chattogram. Without his guidance and help this project was
not possible. Finally, we would like to thank our parents whose blessings and appreciation
helped us.
5
ABSTRACT
The E-commerce Platform with Real-time Text Emotion Detection is a comprehensive web-
based solution designed to revolutionize the online shopping experience by integrating
advanced emotion detection technology into the traditional e-commerce framework. This
innovative platform features real-time emotion analysis of customer reviews and feedback,
enabling businesses to gain valuable insights into customer sentiment and preferences. The
system offers a seamless user experience with a user-friendly interface, secure payment
integration, and personalized product recommendations based on detected emotions.
The project employs a multi-tier user structure comprising administrators, customers, and
specific role management admins, facilitating efficient management, secure transactions, and
personalized user interactions. Utilizing technologies such as Python, TensorFlow, Django,
and MySQL, the platform ensures robust performance, scalability, and data integrity.
Rigorous testing methodologies were applied to validate system functionality, security
measures, and user experience, resulting in a reliable and stable application.
This report provides a detailed overview of the project's architecture, design principles,
implementation strategies, and testing outcomes. It highlights the successful integration of
real-time emotion detection into the e-commerce ecosystem and discusses the implications
for enhancing customer engagement, personalizing user experiences, and driving business
growth. Future work and considerations for further enhancements are also presented,
reflecting on the project's achievements and paving the way for continuous innovation and
excellence in the evolving e-commerce landscape.
6
Table of Contents
Title Page i
Certificate of approval ii
Declaration iii
Dedication 4
ABSTRACT 6
Chapter 1: Introduction 12
1.1 Introduction 12
1.2 Objective 12
1.3 Motivation 13
1.4 Project Scope 13
1.5 Organization of the Report 14
Chapter 2: Literature Review 15
2.1 Literature Review 15
2.2 Real-time Emotion Detection in Customer Feedback: 15
2.3 Personalization and User Experience: 16
2.4 Secure Payment Integration and Transaction Processing: 16
2.5 Advanced Search and Product Management: 17
2.6 User Interface and Design: 17
Chapter 3: Dataset Description 18
3.1 Introduction 18
3.2 Product Data 18
3.3 Emotion Detection Data 18
Chapter 4: System Design 19
4.1 System Design 19
4.2 Proposed System 19
4.3 Software Process Model 20
Chapter 5: Project Planning 22
5.1 Project Planning 22
5.1 Why Requirement Specification is Needed? 22
5.2 Requirement Definition 22
5.3 User List of Application 23
5.4 Requirement Validation 23
7
Chapter 6: Software Requirement Specification 25
6.1 Software Requirement Specification 25
6.2 Scope 25
6.3 Definitions, Acronyms, and Abbreviations 25
6.4 External Dependencies and Tools 25
Chapter 7: System Overview 27
7.1 System Description 27
7.2 System Features 27
7.3 Functional Requirements 27
7.3.1 User Management 27
7.3.2 Product Management 27
7.3.3 Shopping Cart and Checkout 28
7.3.4 Real-time Text Emotion Detection 28
7.3.5 Admin Dashboard 28
7.4 Non-Functional Requirements 28
7.4.1 Performance 28
7.4.2 Security 29
7.4.3 Usability 29
7.4.4 Reliability 29
7.5 Constraints 29
7.6 Supplementary Documentation 30
7.6.1 Use Case Diagram 30
7.6.2 Administrative Interface 30
7.6.3 Customer Interface 30
7.7 Data Flow Diagrams 31
7.7.1 Customer Side 31
7.7.2 Admin Side 31
Chapter 8: Implementation 40
8.1 Implementation 40
8.2 Home page: 40
8.2 Featured Product 41
8.3 Most Popular Products 41
8.4 Add to Cart Popup 42
8.5 Top Categories 43
8.6 Deal of The Day 43
8
8.7 Clothing, Shoes, & Jewelry Category 44
8.8 Campaign Management in Admin 45
8.9 Trendy Product List 45
8.10 Our Brands Showcase 46
8.11 Our Clients Say 47
8.12 Join Our Newsletter Now 48
8.13 Homepage Footer Design 48
8.14 Contact Us Page 49
8.15 Wishlist Page 50
8.16 Shopping Cart Page 51
8.17 Checkout Page 52
8.18 AamarPay Payment Integration 54
8.19 Single Product Details Page 55
8.20 Single Product Details Page with Review Option 56
8.21 My Account Page 57
8.22 Web Review Page 58
8.23 All Tickets Page on My Account 59
8.24 Ticket Details Page 60
8.25 Login Page 61
8.26 Create an Account Page 62
8.27 Reset Password Page 64
8.28 Product Search Page 65
8.29 Admin Sidebar Overview 66
8.30 Navbar Components Overview 68
8.31 Admin Dashboard Overview 68
8.32 Category Page Overview 70
8.33 Sub Category Page Overview 72
8.34 Child Category Page Overview 73
8.35 Brand Page Overview 74
8.36 Warehouse Page Overview 76
8.37 Product Page Overview 77
8.38 Coupons Page Overview 80
8.39 Campaign Page Overview 82
8.39.1 Campaign Page: 82
8.39.2 Viewing and Managing Campaigns: 82
9
8.40 Order Page Overview 83
8.40.1 All Orders 83
8.40.2 Order List 84
8.40.3 Order Details 85
8.40.4 Edit Pickup Point 86
8.41 Pickup Point Page Overview 87
8.42 Ticket Page Overview 89
8.42.1 Ticket List 89
8.42.2 Ticket Details 89
8.43 All Orders Report Page Overview 90
8.44 All Product Review Report Page Overview 92
8.45 All Web Review Report Page Overview 93
8.46 SEO Settings Overview 95
8.47 Website Setting Overview 97
8.48 All Pages Overview 98
8.49 SMTP Mail Settings Overview 99
8.50 Payment Gateway Settings Overview 100
8.51 Admin Profile Page Overview 102
8.51.1 Profile Settings 102
8.52.2 Change Password Section 103
8.52 Admin Role Management Overview 103
Chapter 9: Methodology 105
9.1 Methodology 105
9.2 Project Structure 105
9.3 Hyperparameters 105
9.4 Model Description 106
9.5 Project Analysis 107
Chapter 10: Result 108
10.1 Result 108
10.2 Accuracy and Validation Accuracy 109
10.3 Receiver Operating Characteristic (ROC) Curve 109
10.5 Classification Report 111
Chapter 11 : Testing 113
11.1 Testing 113
11.1 Objectives of Testing 113
10
11.2 Login Testing 113
11.3 Search Testing 114
11.4 User Registration Testing 114
Chapter 12: Conclusion 116
12.1 Limitations & Future Work 116
12.2 Conclusion 116
References 117
11
Chapter 1
INTRODUCTION
1.1 Introduction
Welcome to our user-friendly e-commerce platform, offering a diverse range of products
from clothing and electronics to home goods. Our advanced full-text search engine ensures
you can easily find the products you're looking for by simply entering keywords related to the
product name or description.
Our platform is equipped with innovative features like real-time text emotion detection for
personalized product recommendations and a sophisticated admin system for efficient order
management and customer support. Whether you're a new visitor or a returning customer, our
website provides clear navigation and helpful tools for a seamless shopping experience.
We value your feedback and continuously strive to enhance our services to meet your needs.
Explore our website, discover exclusive deals, and enjoy a hassle-free shopping experience.
1.2 Objective
Evaluate Current User Experience: Assess the existing user experience on traditional e-
commerce platforms to identify areas for improvement.
Implement Advanced Technologies: Integrate real-time text emotion detection and
sophisticated admin systems into the e-commerce platform to enhance functionality and
responsiveness.
Measure User Engagement and Satisfaction: Analyze user interactions, preferences, and
feedback to evaluate the effectiveness of the integrated technologies in improving user
engagement and satisfaction.
Optimize Order Management Processes: Streamline order management systems to reduce
errors, delays, and operational costs, improving overall efficiency and customer
satisfaction.
Enhance Customer Support Services: Implement responsive and personalized customer
support systems to address user queries and concerns promptly and effectively.
12
1.3 Motivation
Growing E-commerce Landscape: With the continuous growth of online shopping, there
is a pressing need to enhance user experience to stay competitive in the market.
Demand for Personalization: Modern consumers increasingly expect personalized
shopping experiences tailored to their preferences and needs.
Potential of Advanced Technologies: Emerging technologies like real-time text emotion
detection and sophisticated admin systems offer promising opportunities to revolutionize
e-commerce platforms and improve user engagement.
Need for Efficient Order Management: Streamlining order management processes can
significantly reduce errors, delays, and operational costs, leading to improved customer
satisfaction and retention.
Enhancing Customer Support: Providing responsive and effective customer support is
crucial for building trust, resolving issues promptly, and fostering long-term relationships
with customers.
13
3. Real-time emotion analysis of customer reviews and feedback to gain
insights into customer sentiment and preferences.
4. Secure and seamless transaction processing with integrated payment
gateways.
5. Comprehensive order and inventory management functionalities to
streamline the shopping process.
6. Generation of detailed reports on order, product review, and web review
analytics.
Facilities 1. A user-friendly and intuitive interface with mobile-responsive layouts to
provide a consistent and engaging shopping experience.
2. Advanced search to facilitate easier and safer product finding based on user
preferences and requirements.
3. Implementation of a commission system to ensure fair financial
transactions between vendors and administrators.
14
Chapter 2
LITERATURE REVIEW
15
Emotion (Positive, The LSTM-CNN
Recognition Negative) outperforms all
Model of other models in
Takeaway terms of precision,
Evaluation Text recall, and F1
Based on score,
LSTM‐CNN. demonstrating its
(2023) [3] superior
performance in
emotion detection
tasks.
4. Effect of English 6 Method Activation
word2vec Function
weighting with CNN- Softmax 99.40%
CNN-BILSTM BILSTM Sigmoid 99.43%
model on The model's
Emotion architecture has a
classification. complex structure
(2023) [4] with 35 layers,
which may lead to
increased
computational
requirements.
16
methods, including credit card, Bkash/Rocket/Nagad, and cash on delivery, ensuring secure
and seamless financial transactions.
17
Chapter 3
DATASET DESCRIPTION
3.1 Introduction
The dataset used in this study plays a crucial role in enhancing various functionalities and
features of our e-commerce platform. This chapter provides an overview of the two distinct
datasets employed in the research, each serving specific purposes to optimize user
experience, satisfaction, and engagement.
3.2 Product Data
The first dataset, consisting of 2,907 rows, is sourced from Kaggle [8] and is meticulously
curated to populate our MySQL Products table. This dataset serves as the backbone of our
platform's product catalog and encompasses a comprehensive range of attributes such as
category, brand, pricing, inventory, and more. By leveraging this dataset, we can dynamically
display product images, manage inventory levels, and customize product listings based on
various attributes like color, size, and tags. This rich and structured data enables us to create a
user-friendly interface that facilitates efficient product discovery, comparison, and purchase,
ultimately enhancing the overall shopping experience for our users.
18
Chapter 4
SYSTEM DESIGN
19
Analyze textual data to identify user sentiments and emotions for proactive response and
personalized communication.
Implement a real-time text emotion detection system to categorize user feedback and
reviews based on emotional responses, enabling targeted and personalized interactions.
The proposed system aims to revolutionize the e-commerce platform by integrating advanced
technologies and leveraging Kaggle-sourced datasets. By implementing multi-class emotion
detection, efficient order management systems, and responsive customer support, the system
will create a personalized and engaging shopping environment.
20
1. Requirements Analysis and Planning
Detailed Requirements Gathering: We collaborate closely with stakeholders, end-users,
and domain experts to elicit, analyze, and document comprehensive requirements,
including functional and non-functional specifications, user stories, and acceptance
criteria.
Project Scope Definition: We establish clear project scope, goals, and objectives based
on the gathered requirements, ensuring alignment with business needs, user
expectations, and project constraints to guide the development process effectively.
2. Design and Implementation
Comprehensive Design Documentation: We develop detailed design documents,
including architectural diagrams, system models, interface designs, and data models,
to provide clear guidelines and specifications for development, ensuring consistency,
scalability, and maintainability of our e-commerce platform.
Feature Implementation: We execute development tasks, coding, and integration of
features and functionalities based on approved design documents, adhering to coding
standards, best practices, and guidelines to ensure quality, performance, and reliability
of the software.
21
Chapter 5
PROJECT PLANNING
22
5.3 User List of Application
There are 3 types of users in “E-commerce Platform with Real-time Text Emotion
Detection”. They are-
Platform Administrator
End User
Role-Based Access Control (RBAC) Administrator
Platform Administrator
Responsible for overseeing and managing the overall operation, configuration, and
maintenance of the e-commerce platform.
Handles user management, content management, system settings, and monitors
performance and security.
Ensures smooth and efficient platform functionality, updates, and compliance with
organizational policies and standards.
End User
Represents the client or customer segment of the platform.
Engages with the platform to browse products, make purchases, leave reviews, and
interact with customer support services.
Utilizes various features and functionalities of the platform to explore, shop, and
enhance their online shopping experience.
23
development, and implementation. It involves a systematic evaluation and verification
process to confirm that the specified requirements align with the project's objectives,
stakeholders' expectations, and industry standards.
Validity Check: It is a critical evaluation process that ensures the requirements, design, and
implementation of the E-commerce Platform with Real-time Text Emotion Detection are
valid, accurate, and reliable in meeting the project's objectives, stakeholder expectations, and
industry standards. Given the innovative and complex nature of our project, conducting a
validity check is essential to verify the integrity, effectiveness, and performance of the
integrated e-commerce and emotion detection functionalities.
Realism Check: is an essential evaluation process that assesses the practicality, feasibility,
and achievability of the E-commerce Platform with Real-time Text Emotion Detection in
terms of technological capabilities, resource availability, time constraints, budget limitations,
and stakeholder expectations. Given the innovative and ambitious nature of our project,
combining e-commerce functionalities with emotion detection capabilities, conducting a
realism check is crucial to validate the project's viability, sustainability, and alignment with
organizational goals and industry standards
24
Chapter 6
SOFTWARE REQUIREMENT SPECIFICATION
6.2 Scope
This SRS outlines the requirements for designing, developing, implementing, and
maintaining an advanced E-commerce Platform that combines traditional online shopping
features with real-time emotion detection in customer feedback and reviews to enhance user
engagement, satisfaction, and business insights.
25
E-commerce Product Data
Text Emotion Detection Data
Payment Gateway
Aamarpay: Used for secure and seamless payment processing on the E-commerce
Platform.
Email Testing and Management
Mailtrap: Used for testing email functionalities, including password reset notifications
and product checkout messages to ensure proper email delivery and functionality.
Cart Management
MindsCMS/LaravelShoppingCart: Used for managing shopping carts, handling product
additions, removals, updates, and order processing on the E-commerce Platform.
Image Processing
Intervention: Used for image upload and correction, ensuring proper sizing, formatting,
and optimization of product images on the E-commerce Platform.
Social Media Sharing
ShareThis: Used for enabling users to share the website and product pages on various
social media platforms, enhancing visibility and engagement.
Development and Testing
ngrok: Used for establishing a secure tunnel to connect Laravel with Colab, enabling real-
time text analysis and emotion labeling of customer reviews and feedback. This
integration allows client-side reviews to be sent to a running Colab instance via an API,
facilitating dynamic labeling and storage of emotional data in the database.
26
Chapter 7
SYSTEM OVERVIEW
27
Product Categories, Subcategories, and Child Categories
Product Variations (Color, Size)
Product Images and Videos
Product Recommendations (Not Implemented)
28
Concurrent Users: 1000+
Scalability: Horizontal and Vertical Scaling
7.4.2 Security
Data Encryption (SSL)
User Authentication and Authorization
Secure Payment Gateway (Aamarpay)
Data Privacy and Compliance (GDPR, CCPA)
7.4.3 Usability
Intuitive UI/UX Design
Mobile Responsiveness
Accessibility Features
Multilingual Support
7.4.4 Reliability
High Availability (99.9% Uptime)
Data Backup and Recovery
Error Handling and Logging
7.5 Constraints
Technology Stack: Python, Ajax, jQuery, HTML/CSS, JavaScript, MySQL, Bootstrap.
Third-Party Integrations: Aamarpay, Mailtrap, MindsCMS/LaravelShoppingCart,
Intervention, ShareThis, ngrok
29
7.6 Supplementary Documentation
7.6.1 Use Case Diagram
A use case is simple method which is used to identify and organize system requirements in
system analysis. This method is made up the possible sequences of interactions between the
systems and users in a particular goal.
7.6.2 Administrative Interface
30
31
7.7 Data Flow Diagrams
7.7.1 Customer Side
32
7.7.2 Admin Side
Figure 7.3: Show admin side diagram.
7.7 Entity-Relationship Diagrams
An entity-relationship diagram (ERD) is a graphical representation of an information system
that shows the relationship between people, objects, places, concepts or events within that
system. In software engineering an ER model is commonly formed to represent things that a
business needs to remember in order to perform business processes. Consequently, the ER
model becomes an abstract data model that defines a data or information structure that can be
implemented in a database, typically a relational database.
33
Figure 7.4: Entity Relationship Diagram Part 1.
34
Figure 7.5: Entity Relationship Diagram Part 2.
35
Figure 7.6: Entity Relationship Diagram Part 3.
36
Figure 7.7: Entity Relationship Diagram Part 4.
37
Figure 7.8: Entity Relationship Diagram Part 5.
38
Figure 7.9: Entity Relationship Diagram Part 6.
39
Figure 7.10: Entity Relationship Diagram Part 7.
40
Chapter 8
IMPLEMENTATION
8.1 Implementation
In this chapter, we present the experimental result analysis of our developed system for the
Interactive E-commerce Platform with Real-time Text Emotion Detection. We provide
snapshots of every step that an admin and users can go through. The obtained results for the
platform are graphically showcased in the following sections. We aim to represent all the user
data in an efficient manner within the "Interactive E-commerce Platform with Real-time Text
Emotion Detection" application.
41
checkout in part and in middle there is featured product part. Between top menu and middle
part there are category name of product and login or register part too. In the bottom part there
are latest products of the website given. In the footer part there are the website information
given. Figure 4.1 shows the Home page of the system.
42
Figure 8.3: Most Popular Product lists.
43
Figure 8.5: Shows add to cart popup box with login.
44
This feature promotes time-sensitive offers, encouraging user engagement and facilitating
quick and easy purchasing decisions directly from the homepage.
Figure 8.7: Shows deal of the day product lists.
45
8.8 Campaign Management in Admin
Our platform offers a "Campaign Management" feature in the admin panel, allowing:
Campaign Configuration: Admins can add and manage various campaigns.
Homepage Visibility: Admins can select which campaigns appear on the homepage.
Clickable Campaigns: Users can click on campaigns to view associated products.
Product Features: Within each campaign, products display color options, Wishlist
functionality, and quick "Add to Cart" option.
This flexible feature enables admins to strategically showcase campaigns on the homepage,
promoting specific promotions or themes and facilitating streamlined product exploration and
purchasing for users.
46
Add to Cart: Quick option to add the product to the cart directly from the product page.
User Comments: Ability for users to leave comments and reviews on individual products.
This interactive feature enhances user engagement by showcasing popular products and
facilitating seamless browsing, purchasing, and user feedback directly from the homepage
and product pages.
purchasing.
Figure 8.11: Shows brands showcase.
47
Figure 8.12: Shows brands to view associated products.
48
Figure 8.13: Shows what our clients have to say about the dynamic sliding display on the
web.
8.12 Join Our Newsletter Now
The "Join Our Newsletter Now" feature on our website allows users to:
Subscribe Easily: Input their email address to subscribe to the newsletter.
Stay Informed: Receive the latest updates, promotions, and news from our shop.
Immediate Updates: Users are instantly added to the newsletter list upon submission.
This feature encourages user engagement and retention by providing a direct channel for
communication, enabling users to stay updated with the latest information, offers, and news
from our website.
Social Media Links connected with us on social media for the latest updates, promotions, and
news:
Facebook: [Facebook Page Link]
49
Twitter: [Twitter Profile Link]
WhatsApp: [WhatsApp Share Link]
The footer section on our homepage is thoughtfully designed to provide users with easy
access to essential information and account-related features. It is divided into two distinct
columns for improved clarity and navigation.
Useful Links column offers quick links to important sections of our website:
About Us: Learn more about our company, mission, and values.
FAQ: Find answers to commonly asked questions about our products, services, and
policies.
Free Delivery: Discover information about our free delivery options, including shipping
policies and delivery times.
Location: View our physical store locations, contact details, and hours of operation.
Affiliates: Explore opportunities to become an affiliate partner and earn commissions by
promoting our products.
Contact: Reach out to our customer service team for assistance, inquiries, or feedback.
My Account column provides convenient access to user account features and tools:
My Account: Access your personal account dashboard to manage orders, settings, and
preferences.
Order Tracking: Track the status of your orders in real-time and view order history.
Wish List: Create, manage, and share your wish list of favorite products.
Our Blog: Stay updated with the latest news, trends, and tips by visiting our blog.
Contact Us: Easily get in touch with our customer support team for any account-related
queries or issues.
Order Tracking: Monitor the progress of your orders and get detailed insights into
delivery status.
50
This well-organized footer design enhances user experience by categorizing and presenting
useful links and account-related information in a clear and accessible manner, facilitating
easier navigation and encouraging user engagement across our website.
Figure 8.15: Shows footer design.
51
Figure 8.16: Shows contact us page.
Action Columns
Remove: A dedicated column with options to remove specific products from your
Wishlist, ensuring easy management and decluttering of your saved items.
Add to Cart: An interactive column that allows you to quickly add desired products from
your Wishlist to your shopping cart, streamlining the purchasing process.
52
With these features, our Wishlist page offers a seamless and efficient way for you to curate
and shop your favorite items, making your shopping experience more enjoyable and
organized.
Figure 8.17: Shows Wishlist Page.
on this page:
Cart Items
Name: Displays the product names.
Size: Shows the selected size for each product.
Color: Indicates the chosen color options.
Quantity: Allows you to adjust the quantity of each item.
Price: Displays the unit price of each product.
Total: Calculates and displays the total price for each item based on the quantity selected.
Action Column
Action: Provides options to update or remove individual products from your shopping
cart, ensuring flexibility and control over your selections.
Final Row
At the bottom of the Shopping Cart page, you will find two essential buttons:
53
Empty Cart: This button allows you to remove all items from your shopping cart,
providing a quick way to start fresh or modify your selections.
Checkout: Clicking this button will redirect you to the checkout page, where you can
review your selected products, enter shipping and payment details, and complete your
purchase.
With these features and functionalities, our Shopping Cart page offers a user-friendly and
efficient platform for managing your shopping selections, streamlining the checkout process,
and ensuring a smooth and enjoyable shopping experience.
Figure 8.18: Shows shopping cart page.
featuring two distinct tables to facilitate easy order processing and payment. Here's what you
can expect on this page:
Table 1: Customer Information & Payment Selection
Customer Information:
Name: Enter your full name.
Phone: Provide your contact phone number.
Country: Select your country from the dropdown list.
Address: Input your detailed address.
Email: Enter your email address for order confirmation and updates.
54
Zip code: Provide your postal code.
City: Select your city from the dropdown list.
Extra Phone: Optional field for an additional contact number.
Payment Selection:
Credit Card: Securely enter your credit card details for payment.
Bkash/Rocket/Nagad: Select your preferred mobile banking option for payment.
Hand Cash: Choose this option if you prefer to pay in cash upon delivery.
Save Button: Click this button to save your customer information and payment selection
for order processing.
Order Summary:
Subtotal: Shows the total price of the products before tax and shipping.
Tax: Indicates the applicable tax percentage (if any).
Shipping: Displays the shipping charges.
Total: Calculates and displays the final payable amount after deductions and additions.
Apply Coupon Code Form: Enter your coupon code in the provided field and click apply
to avail discounts and reduce the total amount payable.
With these features and functionalities, our Checkout page offers a comprehensive platform
for entering customer information, selecting payment options, reviewing order details,
applying discounts, and completing your purchase with ease and confidence.
55
Figure 8.19: Shows checkout page.
With AamarPay, we prioritize security, flexibility, and convenience, enhancing your shopping
experience on our website.
56
8.19 Single Product Details Page
On our Single Product Details Page, you'll find comprehensive information about the product
you're interested in:
Product Details
Color: Displays available color options.
Category: Indicates the product category.
Brand: Highlights the product's brand.
Stock: Shows the current stock availability.
Unit: Specifies the product unit measurement.
Additional Features
Product Share Option: Enables easy sharing of the product with others.
DESCRIPTION: Provides a detailed description of the product.
ADDITIONAL INFO: Offers extra information such as materials, dimensions, etc.
REVIEWS: Showcases customer reviews and ratings.
Product Video: Includes a video showcasing the product in action.
Bottom Section
Related Products: Lists similar or complementary products.
Our Brands: Highlights the brands we offer.
Footer: Includes essential links like About Us, FAQ, Contact, etc.
Our Single Product Details Page is designed to provide you with all the necessary
information and features to make an informed purchase decision, ensuring a seamless and
enjoyable shopping experience.
57
Figure 8.21: Shows single product details page.
8.20 Single Product Details Page with Review Option
Our Single Product Details Page features a dedicated review section to help you make
informed purchasing decisions and engage with other customers' feedback:
Review Statistics
Total Reviews: Displays the total number of reviews for the product.
Average Rating: Shows the average rating based on all customer reviews.
User Review Interface
Review Rating: Allows users to rate the product on a scale (e.g., 1 to 5 stars).
Comment: Provides a text box for users to write their detailed reviews and comments.
Emotional Labeling with Machine Learning
Emotion Labeling: Utilizes machine learning to analyze and label the sentiment of each
review comment (e.g., positive, negative, neutral).
Admin Identification: Helps admin easily identify and categorize reviews based on
sentiment for efficient reading and response.
By incorporating these features, our Single Product Details Page aims to foster a transparent
and interactive shopping community, enabling customers to share their experiences, provide
valuable feedback, and help others make informed decisions while also assisting admin in
58
Figure 8.22: Shows review details.
8.21 My Account Page
Our My Account page is designed to provide you with an overview of your order history and
current order status, along with additional features for enhanced user experience:
Order Summary
Total Order: Displays the total number of orders placed by the user.
Complete Order: Shows the number of successfully completed orders.
Cancel Order: Indicates the count of canceled orders.
Return Order: Displays the number of returned orders.
Recent Order Table
The Recent Order table offers detailed insights into your recent purchases:
OrderID: Unique identifier for each order.
Date: Date of the order placement.
Total: Total amount spent on the order.
Payment Type: Payment method used for the order.
Status: Current status of the order (e.g., Processing, Shipped, Delivered).
Product Tracking System
Order Tracking: Provides real-time tracking information for each order, allowing you to
monitor its status and estimated delivery date.
Photo Upload Option
Photo Upload: Enables users to upload photos related to their orders (e.g., product
images, proof of delivery), enhancing communication and support interactions with
admin or customer service.
With these features, our My Account page offers a comprehensive and user-friendly platform
for managing your orders, tracking their progress, uploading relevant documents, and staying
updated on your shopping activities, ensuring a seamless and satisfying shopping experience.
59
Figure 8.23: Shows my account page.
60
Thank you for taking the time to share your feedback. We value your opinion and are
committed to continuously improving our website to enhance your shopping experience.
61
This All-Tickets page is designed to keep you informed about the progress and status of user
support queries, ensuring transparency and facilitating effective communication between
admin and our customer service team.
62
Features a chat window where you can communicate directly with our admin to discuss
and resolve your concerns in real-time.
Send Message Button:
Enables you to send messages or updates to the admin regarding the ticket.
Attachment Option:
Allows you to upload any relevant screenshots or files to provide additional context or
evidence related to your issue.
The Ticket Details page is designed to streamline the support process, ensuring prompt and
effective communication between you and our customer service team to address and resolve
63
Password:
Input field for entering your password.
Forgot Password?
Link to reset your password if you've forgotten it.
Action Buttons
Login Button:
Click this button to submit your login details and access your account.
Sign up now:
Link to register and create a new account if you don't have one yet.
Security Features
Remember Me:
Checkbox option to remember your login credentials for future visits (optional).
By logging in, you agree to our Terms and Conditions and Privacy Policy. Thank you for
64
Choose Photo:
Upload option to set a profile picture for your account (optional).
Name:
Input field for entering your full name.
Email Address:
Input field for entering a valid email address. This will also serve as your username for
logging in.
Password:
Input field for creating a secure password to protect your account.
Confirm Password:
Input field to re-enter and confirm your chosen password for verification.
Action Button
Register Button:
Click this button to submit your registration details and create your new account.
Additional Information
Already have an account?
Link to our Login page for existing users to access their accounts.
By registering, you agree to our Terms and Conditions and Privacy Policy.
65
Figure 4.27: Shows create an account page.
66
Figure 8.28: Shows reset password page.
For each matching product, you can view its name, description, price, and other relevant
information.
67
Figure 8.29: Shows search bar.
Figure 8.30: Shows product search page.
68
Order Management:
Orders: View and manage customer orders and delivery status.
Blog Management:
Category: Organize and categorize blog posts.
Blog: Create, edit, and publish blog content.
Pickup Point:
Pickup Point: Manage pickup locations for customer convenience.
Customer Support:
Ticket: Address and resolve customer queries and issues.
Reporting:
Order Report: Generate and view order-related reports.
Product Review Report: Analyze and report on product reviews.
Web Review Report: Monitor and analyze website reviews.
Settings:
SEO Setting: Optimize website for search engines.
Website Setting: Manage general website settings.
Page Create: Create and manage website pages.
SMTP Setting: Configure email settings.
Payment Gateway: Set up and manage payment methods.
Profile: Update and manage admin profile settings.
User Role Management:
Create New Role: Define new user roles and permissions.
Manage Role: Edit and update existing user roles and permissions.
The sidebar provides an intuitive and comprehensive navigation system, enabling efficient
management of the Interactive E-commerce Platform with Real-time Text Emotion Detection.
69
Figure 8.31: Shows Admin Sidebar page.
70
Figure 8.32: Shows navbar components.
71
Figure 8.33: Shows admin dashboard page.
72
Show on Homepage: Choose whether to display this category on the homepage or
not.
To manage categories, click "+ Add New" to create a new category or edit an existing one.
The "Home Page" column indicates which categories are displayed on the homepage. If there
are more than 10 categories, they will be displayed across multiple pages, and you can
navigate through them using the paging system at the bottom. Use the search bar to find
specific categories. Additionally, you can download the entire category list in CSV, Excel, or
PDF format, and print the list by clicking on the respective buttons.
73
Figure 8.34: Shows category page.
74
column. If there are more than 10 sub-categories, they will be displayed across multiple
pages, and you can navigate through them using the paging system at the bottom. Use the
search bar to find specific sub-categories. Additionally, you can download the entire sub-
category list in CSV, Excel, or PDF format, and print the list by clicking on the respective
buttons.
75
Download the child category list in CSV, Excel, or PDF format or print it using the
respective buttons.
To manage child categories, click "+ Add New" to create a new child category or edit an
existing one. Here, you can see which sub-category a child category belongs to under the
"SubCategory Name" column. If there are more than 10 child categories, they will be
displayed across multiple pages. Navigate through them using the paging system at the
bottom. Use the search bar to find specific child categories. Additionally, you can download
the entire child category list in CSV, Excel, or PDF format, and print the list by clicking on
the respective buttons.
76
Enter the brand name.
Upload the brand logo.
Select "Yes" if you want the brand to be displayed on the home page; otherwise, select
"No."
Click "Submit."
Editing a Brand:
Find the brand in the list.
Click the edit button (pencil icon).
Update the brand name, logo, or home page display preference if needed.
Click "Update."
Viewing and Managing Brands:
The table shows brand details, including the name, slug, logo, and its visibility on the
home page.
Use the search bar to find a specific brand.
Navigate through multiple pages using the paging system at the bottom.
Download the brand list in CSV, Excel, or PDF format or print it using the respective
buttons.
77
Figure 8.37: Shows brand page.
8.36 Warehouse Page Overview
Adding a New Warehouse:
Click "+ Add New."
Enter the warehouse name.
Provide the warehouse address.
Enter the warehouse phone number.
Click "Submit."
Editing a Warehouse:
Find the warehouse in the list.
Click the edit button (pencil icon).
Update the warehouse name, address, or phone number if needed.
Click "Update."
Viewing and Managing Warehouses:
The table displays warehouse details, including the name, address, and phone number.
Use the search bar to find a specific warehouse.
Navigate through multiple pages using the paging system at the bottom.
Download the warehouse list in CSV, Excel, or PDF format or print it using the
respective buttons.
78
Figure 8.37: Shows warehouse page.
79
Filter products by category, brand, warehouse, status, and slider using the dropdown
menus.
Navigate through multiple pages using the paging system at the bottom.
Activate or deactivate features like featured products, today's deal, and product slider
80
Figure 8.38: Shows product add page.
81
Figure 8.40: Shows product update page.
82
Click "Update."
Download the coupon list in CSV, Excel, or PDF format or print it using the
respective buttons.
Figure 8.42: Shows coupon page.
83
Figure 8.43: Shows coupon add and edit page.
84
8.39 Campaign Page Overview
8.39.1 Campaign Page:
Adding a New Campaign:
Click "+ Add New."
Fill in the campaign details:
Campaign Title: Enter the name of the campaign.
Start Date: Select the start date of the campaign.
End Date: Select the end date of the campaign.
Status: Choose whether the campaign is Active or Inactive.
Discount (%): Enter the discount percentage applied to all product selling prices.
Campaign Image: Upload an image for the campaign.
Click "Submit."
Editing a Campaign:
Locate the campaign in the list.
Click the edit button.
Update the campaign details as required:
Campaign Title
Start Date
End Date
Status
Discount (%)
Campaign Image
Click "Update."
8.39.2 Viewing and Managing Campaigns:
The table displays the campaign details, including the start date, end date, title, image,
discount percentage, and status.
Use the search bar to find a specific campaign.
Actions: Each campaign has action buttons for quick viewing and editing:
Quick View: Click the eye icon to view a quick preview.
Edit: Click the pencil icon to edit the campaign details.
Delete: Click the trash icon to delete the campaign.
85
Figure 8.44: Shows campaign page.
86
Status: Dropdown to filter by order status (All, Pending, Received, Shipped,
Completed, Return, Cancel)
8.40.2 Order List
Columns:
SL: Serial Number
Name: Customer Name
Phone: Customer Phone Number
Email: Customer Email
Subtotal: Order Subtotal (currency symbol)
Total: Order Total (currency symbol)
Payment Type: Payment method used
Date: Order date
Status: Order status
Action: View, Edit, Delete buttons
Modal Popups:
Edit Pickup Point: Opens when the edit button is clicked. It allows you to edit the
order details.
Order Details: Opens when the view button is clicked. It shows detailed information
about the order.
Figure 8.46: Displays the list of orders with the mentioned columns and filters applied.
87
Order Status Badges:
Pending: Red badge
Received: Blue badge
Shipped: Info badge
Completed: Green badge
Return: Yellow badge
Cancel: Red badge
Actions:
View: Opens a detailed view of the order
Edit: Allows editing the order details
Delete: Deletes the order
88
Figure 8.47: Displays order details popup page.
The "Edit Pickup Point" section allows admin to update the pickup point details. At the top,
admin will find the "Current Pickup Point" section, which displays the details of the currently
selected pickup point, including its name, address, city, and contact number.
89
8.41 Pickup Point Page Overview
Pickup Point List
This page displays a list of pickup points.
Pickup Point Name: Name of the pickup point.
Address: Address of the pickup point.
Phone: Contact phone number of the pickup point.
Another Phone: Secondary contact phone number of the pickup point.
Actions
Add New: Click this button to add a new pickup point.
Edit: Click the edit icon to update the pickup point details.
Delete: Click the delete icon to remove the pickup point.
90
Figure 8.50: Displays add pickup point popup page.
Edit Pickup Point
To edit a pickup point:
Click the "Edit" icon next to the pickup point you want to update.
Update the details in the popup modal.
Click the "Update" button to save the changes.
91
Figure 8.51: Displays edit pickup point popup page.
Delete Pickup Point
To delete a pickup point:
Click the "Delete" icon next to the pickup point you want to remove.
Confirm the deletion in the confirmation popup.
This page uses ytable to handle a large amount of data efficiently, allowing you to easily
manage and view the pickup points.
Close Ticket: Click the "Close Ticket" button to mark the ticket as closed.
Figure 8.53: Shows ticket reply page.
This page uses ytable to efficiently handle a large amount of data, making it easier to manage
and view the tickets.
93
Figure 8.54: Shows all orders report page.
Actions
Print: Click the "Print" button to print the filtered orders.
Figure 8.55: Shows all orders print report page.
94
This page utilizes ytable to efficiently manage and display a large amount of data, making it
easier for you to view and analyze the orders.
95
8.44 All Product Review Report Page Overview
The "All Product Review" page displays a comprehensive list of product reviews submitted
by users. This review system also employs machine learning to label the 'Predicted Emotion'
column based on the content of the review, identifying the emotion conveyed by the reviewer.
Filters
Here can filter the reviews based on the predicted emotion. The available options for the
'Predicted Emotion' filter are Anger, Boredom, Empty, Enthusiasm, Fun, Happiness, Hate,
Love, Neutral, Relief, Sadness, Surprise, and Worry.
Review List Table
User Photo: Displays the user's profile photo.
User: The email of the user who submitted the review.
Product Name: The name of the product being reviewed.
Review: The text of the review.
Rating: The rating given by the user.
Predicted Emotion: The emotion predicted by the machine learning model based on
the review content.
Review Date: The date the review was submitted.
Review Month: The month of the review submission.
Review Year: The year of the review submission.
96
Actions
97
User Email: The email address of the user.
Web Review: The text of the web review.
Rating: The rating given by the user.
Predicted Emotion: The emotion predicted by the machine learning model based on
the review content.
98
Figure 8.59: Shows all web review print report page.
The table uses ytable to efficiently handle a large amount of review data, making it easier to
view and analyze the reviews.
the title in search engine results and can influence click-through rates.
99
Google Verification: This is where you can input the verification code provided by
Google to verify ownership of your website.
Alexa Verification: Similarly, this is where you can input the verification code
provided by Alexa for website ownership verification.
Google Analytics: This is where you can input the Google Analytics tracking code to
monitor website traffic and user behavior.
Google Adsense: This is where you can input the Google AdSense code to display
ads on your website and generate revenue.
100
Figure 8.60: Shows SEO settings page.
101
8.47 Website Setting Overview
In the Admin Dashboard, you can manage various settings related to your website:
Currency
You can set the default currency for your website. Options include Taka (৳), USD ($), and
Rupee (₹).
Contact Information
Phone One: The primary contact number for your website.
Phone Two: An additional contact number for your website.
Main Email: The primary email address for customer inquiries.
Support Email: The email address specifically for customer support.
Address: The physical address of your business or organization.
Social Media Links
You can enter the URLs of your social media profiles to link them to your website. Platforms
supported include Facebook, Twitter, Instagram, Linkedin, and YouTube.
Logo & Favicon
Main Logo: Upload or update the main logo of your website.
Favicon: Upload or update the favicon, the small icon displayed in the browser tab.
102
8.48 All Pages Overview
In this section, here can see a list of all the pages currently created on your website. The list
includes:
SL: The serial number of the page.
Page Name: The name of the page as it appears on the website.
Page Title: The title of the page.
Here can also perform the following actions for each page:
Edit: Click on the edit button (pencil icon) to modify the details of a specific page.
Delete: Click on the delete button (trash icon) to remove a page from the list.
103
Figure 8.63: Shows add new page.
Update Page
To update an existing page, click on the edit button next to the respective page on the All-
Pages list. Here can modify the following details:
Page Position: Change the position of the page to Line One or Line Two.
Page Name: Edit the name of the page.
Page Title: Update the title of the page.
104
Mail Username
Description: Your email address or username used to authenticate with the email
server.
Example: If you are using Mailtrap, enter the username provided by Mailtrap.
Mail Password
Description: Your password used to authenticate with the email server.
Example: If you are using Mailtrap, enter the password provided by Mailtrap.
Figure 8.65: Shows SMTP mail settings page.
105
8.50 Payment Gateway Settings Overview
The Aamarpay payment gateway integration is vital for facilitating online payments within
our application. Properly setting up the gateway ensures secure and seamless transactions.
1. StoreID:
Purpose: The StoreID serves as a unique identifier for your Aamarpay account,
106
Input:
Type: Text
Example: Enter the Signature KEY provided by Aamarpay.
3. Live Server Option:
Purpose:
Checkbox:
Enables the live server when checked.
Operates in sandbox mode when unchecked (for testing).
By filling out these fields with the correct information from our Aamarpay account, we can
enable the Aamarpay payment gateway for our application.
107
8.51 Admin Profile Page Overview
8.51.1 Profile Settings
Introduction: The profile settings page allows the admin to manage and update their personal
information and profile picture.
108
Input:
Text field to enter the new email address.
4. Update Button:
Purpose:
Save the changes made to the profile settings.
109
Edit Role
Enables the admin to modify the permissions of an existing role.
Delete Role
Allows the admin to delete a role from the system.
New Role Permissions
The system supports the following permissions:
Category: Allows the admin to manage categories.
Product: Allows the admin to manage products.
Offer: Allows the admin to manage offers.
Order: Allows the admin to manage orders.
Blog: Allows the admin to manage blog posts.
Pickup: Allows the admin to manage pickup points.
Ticket: Allows the admin to manage tickets.
Contact: Allows the admin to manage contact information.
Report: Allows the admin to generate and view reports.
Setting: Allows the admin to manage system settings.
UserRole: Allows the admin to manage user roles.
By following these steps, the admin can effectively manage roles and permissions for the
system's users, ensuring proper access control and security.
110
Chapter 9
METHODOLOGY
9.1 Methodology
In this section, we will delve into the methodology employed for the sentiment analysis
project. We will discuss the project structure, hyperparameters used, model description, and
conclude with an analysis of the project's performance.
9.3 Hyperparameters
The hyperparameters used in the project are:
Tokenizer Parameters:
num_words: 5000
oov_token: '<OOV>'
Sequence Padding Parameters:
111
max_length: 100
padding: 'post'
Convolutional Neural Network (CNN) Model Parameters:
embedding_dim: 50
Conv1D: 128 filters, kernel size 5, activation 'relu'
GlobalMaxPooling1D
Dense: Two dense layers with 64 and 13_classes units respectively, activation 'relu' for
the first layer and 'softmax' for the second layer.
Training Parameters:
epochs: 10
batch_size: 32
112
Figure 9.2: Shows Model diagram.
113
Chapter 10
RESULT
10.1 Result
Our model exhibits the following training and validation results:
1. Training accuracy: The training accuracy of the model reaches approximately 99.87% by
the 10th epoch.
2. Validation accuracy: The validation accuracy of the model is approximately 99.71% by
the end of training.
3. Training loss: The training loss consistently decreases with each epoch, indicating that the
model is learning the underlying patterns in the text data effectively. This reduction in loss
demonstrates that the model's performance improves over time, leading to higher accuracy in
classifying emotions from text.
4. Validation loss: The validation loss also decreases initially, indicating that the model
generalizes well to unseen data. However, it slightly increases towards the end of the training,
which may suggest a potential overfitting tendency or the need for further optimization.
114
10.2 Accuracy and Validation Accuracy
The accuracy and validation accuracy metrics provide insights into the performance and
generalization capabilities of the sentiment analysis model.
Accuracy: The training accuracy consistently improves with each epoch, reaching a peak of
99.87% by the 10th epoch. This indicates that the model is effectively learning the patterns in
the training data and is performing exceptionally well.
Validation Accuracy: The validation accuracy also demonstrates a similar trend, starting
from 99.41% in the 1st epoch and reaching 99.71% by the 10th epoch. This suggests that the
model is generalizing well to unseen data, confirming its robustness and reliability.
The high accuracy and validation accuracy metrics highlight the effectiveness of the CNN-
based sentiment analysis model in classifying emotions from text data with precision and
consistency.
115
ROC Area: 1.0 (for all 13 classes)
An ROC Area of 1.0 indicates perfect performance for all 13 classes in the sentiment analysis
model. This suggests that the model has an excellent ability to differentiate between the
different emotions in the dataset without any false positives or false negatives across various
thresholds.
The high ROC Area score reaffirms the robustness and accuracy of the CNN-based sentiment
analysis model in classifying emotions from text data. It demonstrates that the model's
predictions are highly reliable and consistent across all emotion categories, making it a highly
effective tool for sentiment analysis tasks.
116
Correct Predictions: All values in the Confusion Matrix indicate maximum correct
predictions for the 13 classes.
The Confusion Matrix results further corroborate the high performance of the CNN-based
sentiment analysis model. Achieving maximum correct predictions across all 13 classes
implies that the model's classification accuracy is exceptional, and it effectively distinguishes
and categorizes each emotion in the dataset with high precision.
Overall Metrics
Accuracy: 1.00
Macro Avg:
Precision: 0.98
Recall: 0.98
F1-Score: 0.98
Weighted Avg:
Precision: 1.00
Recall: 1.00
F1-Score: 1.00
117
Precision:
True Positives
Precision=
True Positives+ False Positives
The model has high precision for most classes, indicating that when it predicts a particular
emotion, it is likely to be correct.
Recall:
True Positives
Recall=
True Positives+ False Negatives
The model's recall is also high, meaning it can identify most of the instances of each emotion
correctly.
F1-Score:
Precision x Recall
F 1−Score=2 x
Precision+ Recall
The F1-score is high across all classes, showing an excellent balance between precision and
recall.
Support:
The support varies across classes, indicating the actual number of instances of each emotion
in the test dataset.
The model demonstrates excellent generalization to the unseen data, with a weighted average
F1-score and accuracy of 1.00, which is indicative of a well-performing model.
118
Chapter 11
TESTING
11.1 Testing
The Software testing is an investigation conducted to provide the stakeholders with the
information about the quality of the product or service under to test. After testing of the
software can also provide an objective, independent view of the software to allow the
business to appreciate and understand the risks of software implementation.
If any email and password are not current, there is no output. Only valid data is true.
Table 11.1: Login testing table.
Interface Name Data Field Input values Result
Login Email Please fill out this
& field.
Password
Login Email a@gamil.com Please fill out this
& field.
Password
Login Email 123456789 Please fill out this
119
& field.
Password
Login Email a@gamil.com Invalid email or
& 12345678 password
Password
Login Email a@gamil.com Successfully logged
& 123456789 in!
Password
121
Chapter 12
CONCLUSION
12.2 Conclusion
The E-commerce Platform with Real-time Text Emotion Detection offers a unique blend of
innovative features, including real-time emotion detection, advanced product categorization,
and secure payment integration. Despite facing limitations in emotion detection accuracy and
scalability, the platform holds significant potential for enhancing user engagement,
personalizing the shopping experience, and providing valuable insights through data
analytics. With ongoing improvements in technology and user experience, the platform is
poised to evolve into a leading solution in the competitive e-commerce landscape.
122
References
[1] S. K. Anil Kumar Jadon, "Emotion detection using Word2Vec and convolution neural,"
Indonesian Journal of Electrical Engineering and Computer Science, Yogyakarta,
Indonesia, 2024.
[9] S. ANJALI, "emotion analysis based on text," Kaggle, 12 04 2024. [Online]. Available:
https://www.kaggle.com/datasets/simaanjali/emotion-analysis-based-on-text?
select=emotion_sentimen_dataset.csv. [Accessed 12 04 2024].
123