0% found this document useful (0 votes)
27 views32 pages

Project Report GRP 3

The project report outlines the development of a Customer-to-Customer (C2C) web application aimed at facilitating peer-to-peer transactions among college students for second-hand goods. The application promotes sustainability by enabling the reuse of items, providing an affordable marketplace, and fostering community connections. Key features include a user-friendly interface, secure chat functionality, and a robust back-end powered by technologies like React.js, Node.js, and MongoDB.

Uploaded by

sarghya801
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
27 views32 pages

Project Report GRP 3

The project report outlines the development of a Customer-to-Customer (C2C) web application aimed at facilitating peer-to-peer transactions among college students for second-hand goods. The application promotes sustainability by enabling the reuse of items, providing an affordable marketplace, and fostering community connections. Key features include a user-friendly interface, secure chat functionality, and a robust back-end powered by technologies like React.js, Node.js, and MongoDB.

Uploaded by

sarghya801
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 32

A PROJECT REPORT

On

Customer to Customer Business Model Application

Submitted by

Ankit Kumar Pandey (10800221002)


Guru Prakash Kumar (10800221004)
Rishu Kumar Saw (10800221005)
Sayantanee Sinha (10800221039)

Under the Guidance of

Dr. Avishek Banerjee


Associate Professor & HoD
Dept of Information Technology

Information Technology

Asansol Engineering College


Asansol

Affiliated to

MAULANA ABUL KALAM AZAD UNIVERSITY OF TECHNOLOGY

01/2025

1
CERTIFICATE

Certified that this project report on “Customer to Customer Business Model Application” is the
bonafide work of “Ankit Kumar Pandey (10800221002), Guru Prakash Kumar (10800221004),
Rishu Kumar Saw (10800221005), Sayantanee Sinha (10800221039)” who carried out the project
work under my supervision.

_________________________________
Dr. Avishek Banerjee
Associate Professor & HoD
Dept of Information Technology

Information Technology
Asansol Engineering College
Asansol

2
ACKNOWLEDGEMENT

It is our great privilege to express my profound and sincere gratitude to our Dr. Avishek Banerjee,
Assistant Professor & HoD for providing me with very cooperative and precious guidance at every
stage of the present project work being carried out under his/her supervision. His valuable advice and
instructions in carrying out the present study have been a very rewarding and pleasurable experience
that has greatly benefitted us throughout our work.

We would also like to pay our heartiest thanks and gratitude to Dr Anup Kr. Mukhopadhyay, HoD,
and all the faculty members of the Information Technology, Asansol Engineering College for various
suggestions being provided in attaining success in our work.

Finally, we would like to express our deep sense of gratitude to our parents for their constant motivation
and support throughout our work.

……………………………………………
Ankit Kumar Pandey

……………………………………………
Guru Prakash Kumar

……………………………………………
Rishu Kumar Saw

……………………………………………
Sayantanee Sinha

Date: 20/01/2025 4th Year


Place: Asansol Information Technology

3
CONTENT

Certificate ……………………………………………………………………………… 2

Acknowledgement ……………………………………………………………………... 3

Content …………………………………………………………………………………. 4

List of Figures/Tables ………………………………………………………………….. 5

Project Synopsis ………………………………………………………………………... 6 - 13

1. Introduction …………………………………………………………………….. 14 – 16
1.1 Concept of Idea …………………………………………………………….. 14 – 15
1.2 Importance …………………………………………………………………. 15 – 16

2. Project Details …………………………………………………………………... 16 – 28


2.1 Software Requirements… …………………………………………………... 16 – 17
2.2 Hardware Requirements……………………………………………………... 17
2.3 Description of Technology Use……………………………………………... 17 – 18
2.4 Entity Relationship Diagram……... ………………………………………… 19
2.5 Data Flow Diagram ..………………………………………………………... 20
2.6 Flow Chart Diagram……... …………………………………………………. 21 – 22
2.7 Web Designing ….....………………………………………………………... 20 – 26
2.8 Web Interface ……………..……... ………………………………………… 26 – 28

3. Conclusion and Future Works …………………………………………………... 29 – 30

4. Reference ………………………………………………………………………… 30 – 31

4
LIST OF FIGURES

Figure 1 Entity Relationship Diagram 19


Figure 2 Data Flow Diagram level 0 20
Figure 3 Data Flow Diagram level 1 20
Figure 4 Flow Chart Diagram 21

5
PROJECT SYNOPSIS

The Project Synopsis gives us a brief description on the project and it’s working
model. It gives us an overview of how the project has been handled by us through
peaks and trenches making this work of ours a successful document to be
showcased upon.
The Customer-to-Customer (C2C) Platform is a web-based application designed
to facilitate peer-to-peer transactions within college communities. The platform
enables students to easily buy, sell, or exchange items such as textbooks,
electronics, furniture, and other personal belongings, creating an efficient
marketplace for second-hand goods. By utilizing a web-based solution, the
platform provides a convenient, user-friendly interface that promotes
sustainability, reduces waste, and offers an affordable alternative to purchasing
new items.
This Project aims to bridge the gap between students who have surplus items and
those in need of affordable alternatives. In doing so, it fosters a circular economy
where goods are reused within the college community rather than being
discarded. The platform is designed to be intuitive and secure, providing a space
where students can interact, negotiate, and complete transactions with ease.

OBJECTIVES:
1. To develop a user-friendly C2C application for buying and selling second-
hand items among college students using efficient technologies like
React.js, MongoDB, and Node.js.
2. To promote sustainability by reducing the wastage of usable items and
encouraging the reuse of resources. Encourage the reuse of items within
the college community, reducing waste and promoting sustainability.
3. To provide an affordable alternative for students to acquire necessary items
without purchasing new ones. Help students save money by providing
access to second-hand goods at lower prices. Enable the recycling and
repurposing of items, creating an ecosystem where goods circulate within
the community.

6
4. To integrate a secure chat feature to allow direct communication between
buyers and sellers.
5. Strengthen connections among students through a platform that facilitates
sharing and exchanging items.
6. Offer a platform that is easy to use, secure, and trustworthy for all users.

METHODOLOGY:
Front-End Development
The user interface (UI) will be crafted with React.js, a powerful and widely-used
JavaScript library. This choice ensures that the application offers interactivity
through React’s component-based architecture, which makes it easy to create
reusable, dynamic UI elements. The application will be designed to be
responsive by using modern CSS libraries and frameworks such as Tailwind CSS
or Bootstrap, ensuring seamless functionality on desktops, tablets, and mobile
devices. Enhanced performance will be achieved through React’s virtual DOM,
which allows updates to be efficient, resulting in a smooth user experience.
Features such as intuitive navigation, clear visuals, and functionalities like
product filtering, sorting, and searching will be implemented to improve user
engagement.

Back-End Development
The back-end will be powered by Node.js, a JavaScript runtime known for its
scalability and speed. Node.js uses an event-driven, non-blocking I/O model,
which ensures efficient handling of multiple simultaneous requests. RESTful APIs
will be designed to connect the front-end with the database and handle actions
such as user authentication, product listings, and real-time updates. To simplify
routing and middleware management, the Express.js framework will be
employed. The back-end will also prioritize security by implementing secure
mechanisms for user authentication, such as JSON Web Tokens (JWT), and
encrypted communication using HTTPS.

Database Management
A MongoDB database will be used to store the application’s data, including user
profiles, listed items, and chat messages. MongoDB’s document-based NoSQL
architecture offers flexibility, allowing easy storage and retrieval of JSON-like
data. It is highly scalable and can handle increasing amounts of data and
7
concurrent users without performance degradation. The database collections
will be designed for users, products, and messages, with optimized indexes to
ensure fast and efficient queries.

Real-Time Communication
To enable seamless communication between buyers and sellers, a real-time chat
feature will be integrated. Using WebSockets and libraries like Socket.io, buyers
and sellers will be able to exchange messages instantly. A notification system will
be implemented to send real-time alerts for new messages, product inquiries, or
purchase confirmations, enhancing user interactivity. Chat messages will be
saved in the MongoDB database to ensure a complete and accessible
communication history.

Agile Development Process


The development process will follow the Agile methodology, which ensures
flexibility and emphasizes iterative improvements

EXPECTED OUTCOMES:
The Customer-to-Customer Platform is expected to achieve several impactful
outcomes:
Access to Affordable Goods: The platform will provide students with a
convenient way to buy, sell, and exchange second-hand items like textbooks,
electronics, and furniture at lower prices, addressing financial challenges.
Sustainability and Waste Reduction: By promoting the reuse of items, the
platform will help reduce waste and encourage sustainable practices, lowering
the environmental impact of discarded goods.
Strengthened Peer-to-Peer Economy: C2C-CP will foster a circular economy
where students directly exchange goods, building stronger community
connections and promoting collaborative consumption.
Improved Convenience: With features like real-time messaging, search filters,
and secure transactions, the platform will streamline buying and selling
processes, saving students time and effort.

8
Increased User Engagement: Through a user-friendly interface, transaction
history, and ratings, students will feel confident in their exchanges, leading to
higher engagement and satisfaction.
Scalability and Future Growth: The platform is designed to scale, potentially
expanding to other campuses and becoming a nationwide or global marketplace
for students.

IMPLEMENTATION PLAN:
Front-End Development
The user interface (UI) will be crafted with React.js, a powerful and widely-used
JavaScript library. This choice ensures that the application offers interactivity
through React’s component-based architecture, which makes it easy to create
reusable, dynamic UI elements. The application will be designed to be responsive
by using modern CSS libraries and frameworks such as Tailwind CSS or Bootstrap,
ensuring seamless functionality on desktops, tablets, and mobile devices.
Enhanced performance will be achieved through React’s virtual DOM, which
allows updates to be efficient, resulting in a smooth user experience. Features
such as intuitive navigation, clear visuals, and functionalities like product filtering,
sorting, and searching will be implemented to improve user engagement.
Back-End Development
The back-end will be powered by Node.js, a JavaScript runtime known for its
scalability and speed. Node.js uses an event-driven, non-blocking I/O model,
which ensures efficient handling of multiple simultaneous requests. RESTful APIs
will be designed to connect the front-end with the database and handle actions
such as user authentication, product listings, and real-time updates. To simplify
routing and middleware management, the Express.js framework will be
employed. The back-end will also prioritize security by implementing secure
mechanisms for user authentication, such as JSON Web Tokens (JWT), and
encrypted communication using HTTPS.
Database Management
A MongoDB database will be used to store the application’s data, including user
profiles, listed items, and chat messages. MongoDB’s document-based NoSQL
architecture offers flexibility, allowing easy storage and retrieval of JSON-like data.

9
It is highly scalable and can handle increasing amounts of data and concurrent
users without performance degradation. The database collections will be
designed for users, products, and messages, with optimized indexes to ensure fast
and efficient queries.
Real-Time Communication:
To enable seamless communication between buyers and sellers, a real-time chat
feature will be integrated. Using WebSockets and libraries like Socket.io, buyers
and sellers will be able to exchange messages instantly. A notification system will
be implemented to send real-time alerts for new messages, product inquiries, or
purchase confirmations, enhancing user interactivity. Chat messages will be saved
in the MongoDB database to ensure a complete and accessible communication
history.
Agile Development Process:
The development process will follow the Agile methodology, which ensures
flexibility and emphasizes iterative improvements.

KEY COMPONENTS:
USER AUTHENTICATION AND AUTHORIZATION
Registration & Login:
Users can sign up using their email or social media accounts (e.g., Google,
Facebook) for easy registration and login. The authentication process ensures that
only verified users can access the platform.
JWT (JSON Web Token) or OAuth2.0 will be used for token-based authentication,
enabling secure login and session management.
After logging in, users can create or edit their profiles, which store transaction
history, listed items, and ratings from previous exchanges.
Role-Based Access Control:
Users will have different roles: standard users (buyers/sellers) and admins
(moderators or platform managers). Admins will have the ability to approve,
moderate, or delete listings that violate the platform’s guidelines.

10
ITEM LISTINGS AND SEARCH FUNCTIONALITY
Item Creation:
Sellers can list items for sale or exchange by uploading photos, providing detailed
descriptions (e.g., condition, brand, size), and setting the price or exchange terms.
Categorization of items into different groups (e.g., textbooks, electronics,
furniture, appliances) helps in organizing the marketplace and making it easier to
find specific items.
Additional fields such as item condition (new, like new, used) and location (on-
campus or nearby) will help users evaluate the item’s quality and convenience.
Search and Filters:
The search feature will allow users to find specific items using keywords.
Filters based on categories (textbooks, electronics, etc.), price range, condition,
location, and item type (sell or exchange) will make the search more efficient.
Sorting options (e.g., by price, newest listings) will help users browse through
listings in the most convenient way.
IN-APP MESSAGING SYSTEM
Real-Time Messaging:
Once a buyer is interested in an item, they can initiate a conversation with the
seller via a built-in messaging system.
The messaging platform will use Web Sockets to provide real-time updates,
ensuring that communication is instant and fluid.
Secure messaging ensures that users can communicate without exposing
personal contact information, thus protecting privacy and enhancing security.
Message Notifications:
Notifications will alert users to new messages or updates related to their
transactions. Users will also be notified when an item they are looking for is listed
or when there is an update on their transaction status.

11
RATINGS AND REVIEWS
Feedback System:
After a transaction is completed, both the buyer and the seller can rate each
other, helping build trust within the platform. Ratings can be based on factors
such as item condition, communication, and transaction completion.
Reviews will be visible on user profiles and item listings, helping other users
assess the reliability of potential buyers and sellers.
Reputation and Trust:
Users with consistent positive ratings will be identified as “trusted sellers” or
“trusted buyers,” encouraging more participation and reducing the risk of scams.
A user’s rating and review history will be visible on their profile, helping to create
a sense of community accountability.
TRANSACTION MANAGEMENT
Transaction Tracking:
Users will be able to view and manage their active, pending, or completed
transactions. Each transaction will include details such as item(s) being
exchanged, status (e.g., pending, completed, cancelled), and payment status (if
applicable).
Payment Integration:
If the platform supports payment transactions, a secure payment system such as
Stripe, PayPal, or Razorpay can be integrated, enabling secure online payments
for item purchases.
The system will also track payment status and ensure that funds are transferred
only after the buyer confirms they have received the item in satisfactory
condition.
ADMIN DASHBOARD AND MODERATION
Content Moderation:
Admins will have the ability to review and approve new item listings to ensure
they meet the platform’s guidelines (e.g., no prohibited items, accurate
descriptions, no fraudulent activity).
12
Admins can remove flagged items or suspend users who violate platform policies,
ensuring the platform remains safe and trustworthy.
Analytics:
The admin dashboard will also include analytical tools to track user activity,
popular categories, transaction volume, and other key performance indicators
(KPIs) to monitor the platform’s growth and user engagement.
RESPONSIVE WEB DESIGN
Mobile-First Design:
Given that many students access online platforms via mobile devices, the web
application will have a mobile-first design. The platform will be fully responsive,
ensuring it provides a seamless user experience across various screen sizes and
devices (desktops, tablets, smartphones).
CSS frameworks like Bootstrap or Tailwind CSS will be used for efficient layout
design and responsiveness.
User Interface (UI) and User Experience (UX):
The UI will be designed to be intuitive and easy to navigate, with simple menu
structures and clearly visible action buttons (e.g., list item, search, message
seller).
The platform will focus on minimizing friction and enhancing user satisfaction
through smooth interactions, clean design, and quick loading times.
DATABASE MANAGEMENT
MongoDB: The platform will use MongoDB, a NoSQL database, for flexible data
storage. MongoDB is well-suited for storing user profiles, item listings, transaction
records, and messaging data.
Data will be structured in collections, and the schema will support fast querying
and efficient data retrieval.

13
INTRODUCTION
The college experience often comes with the challenge of managing limited
financial resources. Students face numerous financial obligations, including
tuition fees, living expenses, textbooks, and other academic supplies, all of which
can significantly impact their overall budget. In addition to these essential
expenses, students frequently acquire various items such as electronics,
furniture, and personal goods, many of which are used only for a short period.
Afterward, these items often sit unused or are discarded due to lack of space,
need, or awareness of how to recycle or repurpose them. At the same time,
students who need these same items, such as textbooks, household furniture, or
gadgets, may find the cost of buying them new to be prohibitive, especially on a
tight student budget. The proposed solution to this problem is the development
of a customer to customer(C2C) Platform specifically tailored for college
communities. This platform will enable students to buy, sell, or exchange gently
used items directly with their peers in a secure, user-friendly, and convenient
environment. The goal of this platform is not only to provide a space for students
to obtain affordable second-hand goods but also to foster a more sustainable
campus culture by promoting the reuse and repurposing of items. By doing so,
the platform creates an opportunity for students to save money, reduce
environmental waste, and contribute to a circular economy within the college
ecosystem. The platform will utilize modern web technologies such as React.js,
Node.js, and MongoDB to provide a robust, scalable, and efficient system. React.js
will be used to build a dynamic, interactive, and responsive user interface,
ensuring a seamless experience for students while browsing or managing item
listings. On the back end, Node.js and Express will enable smooth communication
between the platform’s server and client, allowing for secure user interactions,
item transactions, and messaging features. MongoDB, a NoSQL database, will
handle user data, item listings, and transaction histories with flexibility and
scalability, making it an ideal choice for the platform’s growing user base.

1.1 CONCEPT OF IDEA


The Customer -to-Customer (C2C) Platform is designed to address the common
challenges faced by college students in managing their financial resources and
reducing waste. College students often accumulate items such as textbooks,
furniture, and electronics, which are used briefly and then left unused, while
14
other students may be looking for these same items but cannot afford to buy
them new. The platform provides a solution by creating a local marketplace where
students can easily buy, sell, or exchange gently used items with their peers. This
system promotes a circular economy by enabling the reuse of products, thereby
reducing waste and minimizing the environmental impact of unnecessary
consumption. By utilizing modern web technologies such as React.js, Node.js, and
MongoDB, the platform ensures a secure, efficient, and user-friendly experience
for students. The platform not only helps students save money but also fosters
community engagement by connecting individuals who can mutually benefit from
shared resources, ultimately supporting sustainable practices and building a more
collaborative campus environment.

1.2 IMPORTANCE:
The Customer to Customer(C2C) Platform offers significant value across financial,
environmental, and social dimensions.
Financial Benefits for Students: College students often face financial pressure
due to tuition and living costs. This platform provides an affordable alternative by
allowing students to buy, sell, or exchange second-hand items like textbooks,
electronics, and furniture. It helps students save money, access essential goods
without the high cost of new items, and even recoup some costs by selling unused
goods.
Promoting Sustainability: The platform fosters a circular economy, reducing
waste and the need for new resources. By encouraging the reuse of items,
students contribute to environmental sustainability by minimizing consumption
and reducing the disposal of still-useful products. It empowers students to be
environmentally responsible while helping reduce their ecological footprint.
Strengthening College Communities: This platform encourages community
building by connecting students within the college environment. Through
exchanges, students can help one another and build trust via reviews and ratings.
The platform also enhances social engagement, allowing students to interact,
share resources, and form a more collaborative, supportive campus culture.
Economic and Environmental Contribution: The platform supports the local
economy by promoting peer-to-peer transactions, which keeps money within the
student community. This economic model, centered on reusing goods, aligns with
15
broader sustainability goals by reducing the need for new products and
promoting responsible consumption.
Scalability and Long-Term Impact: The platform has the potential to scale
beyond individual campuses, creating a wider network for resource sharing across
various communities. Its long-term impact could contribute to a shift in consumer
behaviour, reducing waste and encouraging sustainable practices on a larger
scale.

PROJECT DETAILS
For A Successful Project Report to be build. a project must contain some of the
specifications to make the report more informative and more representative to
the client whom we deal with. The following Project Specifications are the major
Distinctions which make our Project a more desirable one.
• The Project is more SPECIFIC, that is it is Specific to the Topics and does not
contain any useless or uninformative data that makes the project hard to
sustain.
• The Project is MEASURABLE that is our project yields a clearly defined
project that is measurable in terms of both achievements and benefits.
• Our Project is ACHIEVABLE that is although we talk more about ambitions,
we need to know that our project should meet our expectations and can be
achieved.
• The project is RELEVANT that means the project must guarantee to be the
most efficient in overall aspects of its production, otherwise it becomes
irrelevant to its entity.
The above-mentioned characteristics are jot down of our project report and helps
in identification and knowledge of our project.
2.1 SOFTWARE REQUIREMENTS:
The proposed C2C platform requires a robust and scalable software stack to
ensure efficient performance and usability. Node.js (v16 or higher) is used as the
backend runtime, enabling high-performance server-side operations. MongoDB
serves as the database for managing data such as user details, item listings, and
transactions. Express.js is utilized for backend routing and API management, while
React.js powers the frontend, delivering an interactive and responsive user
interface. Development is conducted using Visual Studio Code (VS Code), with Git
16
managing version control and collaboration. The platform supports deployment
on Windows 10, macOS, and Linux, ensuring cross-platform compatibility.
Required packages to run the project are:
1. Node.js (v16 or higher): Runtime environment for backend development.
2. MongoDB: NoSQL database for efficient data management.
3. Express.js: Framework for server-side routing and APIs.
4. React.js: Library for creating the user interface.
5. VS Code: Development and debugging IDE.
6. Git: Version control system for source code management.
7. Operating Systems: Windows 10, macOS, or Linux for deployment and
testing.
2.2 HARDWARE REQUIREMENTS:
To run the proposed C2C platform efficiently, the system must meet certain
hardware specifications. The proposed C2C platform requires a system with at
least 4 GB RAM and a Quad-Core processor (2 GHz or higher) for smooth
performance. A minimum of 120 GB SSD is essential for storage, ensuring fast
data access and responsiveness. Additionally, a stable broadband connection is
crucial for seamless API calls and database operations.
Hardware Specifications
• RAM: Minimum 4 GB
• Processor: Quad-Core (2 GHz or higher)
• Storage: Minimum 120 GB SSD
• Network: Stable broadband connection

2.3 DESCRIPTION OF TECHNOLOGY USED:


1) VS Code:
Visual Studio Code (VS Code) is a popular integrated development environment
(IDE) widely used for programming. It offers a simplified code editor that supports
debugging, task execution, and version control. VS Code is lightweight yet
powerful, making it ideal for development across various platforms. We can
customize the environment with plugins and extensions.
17
2) MongoDB:
MongoDB is a popular NoSQL database designed to store and manage large
volumes of data efficiently. Unlike traditional relational databases (like MySQL or
PostgreSQL) that use tables and rows, MongoDB uses a more flexible, document
oriented model to store data in JSON-like documents. These documents are
stored in collections, which are similar to tables in relational databases.

3) Express.Js:
Express.js is a fast, minimal, and flexible web application framework for Node.js.
It simplifies the process of building web applications and APIs by providing a
robust set of features and tools to handle requests, responses, and middleware.
Express.js is widely used in the development of server-side applications and is a
core component of the MERN stack (MongoDB, Express.js, React.js, Node.js).

4) React.Js:
React.js is a popular and powerful JavaScript library developed by Meta (formerly
Facebook) for building user interfaces, particularly for single-page applications
(SPAs). It allows developers to create dynamic, interactive, and fast web
applications using a component-based approach. React focuses on building
reusable UI components, enabling efficient development and maintenance.

5) Node.Js:
Node.js is a runtime environment that allows developers to run JavaScript code
on the server side. Built on Google Chrome's V8 JavaScript engine, Node.js is fast,
lightweight, and designed for building scalable, high-performance web
applications and APIs. It enables JavaScript to be used for both client-side and
server-side programming, making it a popular choice for full-stack development.

6) JavaScript:
JavaScript is a versatile, high-level programming language primarily used to create
dynamic and interactive elements on websites. Originally developed to run in web
browsers, JavaScript has evolved into a powerful language used in web
development, mobile apps, server-side applications (with Node.js), game
development, and more.

18
2.4 ENTITY-RELATIONSHIP DIAGRAM (ERD):

An Entity-Relationship Diagram (ERD) is a graphical representation of entities,


their attributes, and relationships in a database. It helps visualize the data
structure and interactions, making it easier to design and manage databases.
Entities represent real-world objects, attributes define their properties, and
relationships illustrate associations between them. ERDs are widely used in
database modeling and system design for clarity and efficiency. They serve as a
blueprint for creating relational databases, ensuring accurate and structured data
organization.

The C2C Business application database architecture is modelled using an ERD,


featuring the following key entities:
Users: Contains user details like name, email, password.
Categories: Contains product categories, each category can have multiple
products.
Products: Contains product details like, name, quantity, price.

19
Orders: Contains Order details like products in the order, transaction id, address,
phone and user details etc.

2.5 DATA FLOW DIAGRAM (DFD)

Level 0

Level 1

20
Level 2

2.6 DATA FLOW DIAGRAM


A Data Flow Diagram (DFD) visually represents how data moves through a system,
illustrating processes, data stores, and external entities. It helps to analyse and
design systems by showing the flow and transformation of data, ensuring clarity
in system operations.

21
Explanation of the process:

1. Start: The process begins with the user accessing the platform.
2. Registration Check:
o If the user is not registered, they are directed to the "User
Registration" process.
o If the user is registered, they proceed to the Login step.
22
3. Login: After logging in, users have two primary options:
o They can choose to shop.
o Or they can view account information.
4. Shopping Workflow:
o If the user opts to shop, they are directed to "View Search Items."
o The user can then select items to add to their cart.
o After adding items, the system displays the cart contents.
o The user has the option to change items or quantities in the cart:
▪ If they choose to make changes, they proceed to "Change Items
& Item Quantities."
▪ If no changes are needed, they proceed to the Checkout step.
5. Account Management:
o If the user decides to view account information, they are given
another choice:
▪ Return to "View Search Items" to shop.
▪ Or choose to "Log Out" of the system.
6. Checkout and Payment:
o After checkout, the user is directed to the "Payment" step.
o If the payment is not approved, the user is looped back to retry
payment.
o If the payment is approved, they proceed to the Order Confirmation
& Shipping step.
7. Order Confirmation & Shipping:
o Once the order is confirmed and processed, the system concludes
with the "End" step.

2.7 WEB DESIGNING


USAGE OF REACT HOOKS
React Hooks revolutionized the way components were built and managed in this
project, enabling dynamic interactions and efficient state management without
relying on class components. They simplified logic, enhanced modularity, and
allowed the seamless integration of lifecycle methods directly into functional
components.

23
MANAGING STATE WITH USESTATE
Dynamic Data Handling: The useState hook managed state variables, including
form inputs for item listings, real-time chat updates, and UI component states.
For example:
o User forms (login, signup, item creation) maintained input states for fields
like email, password, title, and price.
o Real-time updates to item lists, ensuring newly added items were displayed
immediately without reloading the page.
UI Component States: Used to control modal visibility, dropdown selections, and
loading indicators. This provided a highly responsive user interface.
LIFECYCLE AND SIDE EFFECTS WITH useEffect
Data Fetching and Synchronization: useEffect managed API calls to fetch or
synchronize data from the backend. Examples include:
o Loading item listings when a user navigates to the home or search page.
o Fetching user-specific data, such as transaction history, upon login.
Real-Time Updates: Implemented for features like notifications, chat messages,
or item availability updates.
Cleanup Logic: Ensured the proper removal of event listeners and other
resources when components unmounted or updated. This avoided memory leaks
and improved application performance.
SHARING DATA ACROSS COMPONENTS WITH useContext
Global State Management: The useContext hook provided a centralized state
for data such as user authentication and session details. It simplified the passing
of user-related information to deeply nested components without prop drilling.
Access Control: Features like restricted pages (e.g., posting a listing, chatting
with a seller) relied on useContext to verify if a user was logged in before granting
access.
REUSABLE LOGIC WITH CUSTOM HOOKS
Custom hooks were developed to encapsulate repetitive logic, improving code
reuse and maintainability:
24
Fetching Data: A custom hook simplified fetching data from the backend,
handling errors and loading states.
Pagination and Filtering: Enabled consistent logic for breaking down large data
sets into pages or filtering results based on categories and keywords.
Input Validation: Validations, such as checking required fields and proper formats
(e.g., email, price), were abstracted into reusable hooks.
USAGE OF MONGODB
MongoDB served as the backbone of the application, enabling efficient storage,
retrieval, and manipulation of data. Its document-oriented design provided
flexibility and scalability, making it an ideal choice for managing diverse data
structures.
Flexible Schema Design
MongoDB’s schema-less design was tailored to the project’s needs, allowing for
easy updates and scalability:
• Users: Stored user profiles, including names, emails, hashed passwords,
and preferences (e.g., categories of interest).
• Items: Maintained records of items listed by users, including fields like title,
description, price, condition, category, and seller information.
• Orders: Tracked details of completed transactions, including buyer and
seller IDs, timestamps, and item data.
• Chat Messages: Stored real-time conversations between buyers and sellers,
capturing message content, sender/receiver details, and timestamps.
CRUD OPERATIONS
MongoDB enabled seamless management of data through CRUD operations:
• Create: Allowed users to add new listings, register accounts, or send
messages.
• Read: Supported querying of item listings, user profiles, and chat
conversations. Filters and sorting were applied to enhance user experience,
such as displaying the newest items first.
• Update: Enabled users to modify their listings or update profile details.
25
• Delete: Provided functionality to remove listings (e.g., sold items) or
inappropriate content flagged by users.

REAL-TIME FEATURES WITH CHANGE STREAMS


MongoDB’s change streams were used to implement real-time updates,
enhancing interactivity:
• Chat System: Buyers and sellers received live message updates during
conversations.
• Item Listings: Users saw newly added items appear dynamically without
refreshing the page.
Advanced Data Aggregation
The platform used MongoDB’s aggregation framework to generate insights and
optimize data presentation:
• Category Analytics: Determined the most popular categories based on user
activity and listing frequency.
• User Metrics: Identified active users by tracking the number of items listed
or transactions completed.
• Search Optimization: Enabled advanced filtering by price range, category,
or keyword relevance.
PERFORMANCE OPTIMIZATION WITH INDEXING
Indexes were applied to frequently queried fields (e.g., item title, category, and
seller ID), ensuring fast query execution even as the database grew. Indexing
reduced search times significantly for operations like:
• Searching for items by title or description.
• Filtering items by price, category, or seller location.
INTEGRATION WITH MONGOOSE
Mongoose was used as an ODM (Object Data Modeling) library to bridge
MongoDB with the backend. It provided:

26
1. Schema Enforcement: Clear data structures and validation rules were
defined to ensure consistency and reliability of the stored data. This helps
maintain data integrity by preventing invalid or incomplete entries from
being saved. For example, fields like "price" or "item name" are strictly
validated to follow predefined formats. This ensures the database remains
clean and organized, reducing potential errors during data retrieval.
2. Simplified Queries: CRUD operations (Create, Read, Update, Delete) were
optimized to streamline interactions with the database. Relationships
between collections, such as linking items to their respective sellers or
messages to conversations, were established. This allows developers to
query related data efficiently using simple commands. As a result,
operations that involve multiple collections become faster and more
intuitive.
3. Middleware: Middleware functions like pre-save and post-save hooks were
implemented to automate repetitive or essential tasks. For instance, pre-
save hooks can validate data before it is written, while post-save hooks can
log changes or trigger notifications. These hooks enhance efficiency by
embedding logic directly into the data lifecycle. They also improve
maintainability by centralizing automated processes.

2.8 WEB INTERFACE


The homepage of the C2C business website is designed to provide an intuitive
and visually engaging interface, ensuring a seamless and user-friendly experience
for all visitors. It serves as the central hub for users to explore the platform's
features with ease. Key functionalities include a robust login and registration
system, allowing users to create and manage their accounts effortlessly. The
homepage also highlights categorized products, making it convenient for users to
browse through various items based on their preferences. Additionally, it
incorporates a streamlined "add to cart" functionality, enabling users to quickly
select and save items they wish to purchase, enhancing the overall shopping
experience.

27
HOME PAGE:

CART INTERFACE:

PRODUCT VIEW:

28
SELLER DASHBOARD INTERFACE:

SELLER PRODUCT LISTING INTERFACE:

29
CONCLUSION AND FUTURE WORDS
The proposed application stands as a robust and comprehensive platform
tailored to meet the unique needs of college students by enabling them to buy
and sell second-hand items within their community. This peer-to-peer
marketplace fosters an environment where students can engage in sustainable
practices by repurposing items that would otherwise go unused. By promoting
the reuse of goods, the platform significantly contributes to waste reduction and
environmental sustainability, aligning with the broader goals of ecological
responsibility and conscious consumerism.
One of the platform's primary advantages is its ability to provide students with
access to affordable resources. College students often face financial constraints,
and this application alleviates their dependency on purchasing brand-new items,
which are typically more expensive. Whether it’s textbooks, electronics,
furniture, or other essentials, the application ensures that students can obtain
these items at reasonable prices, thereby easing their financial burden.
Simultaneously, it empowers sellers to earn some return on items they no longer
need, creating a mutually beneficial ecosystem.
To enhance the overall user experience, the application incorporates secure and
intuitive communication features. Buyers and sellers can seamlessly interact
within the platform, enabling them to discuss product details, negotiate terms,
and finalize transactions without the need for external communication tools. This
integrated approach not only streamlines the process but also builds trust and
transparency between users, which is critical for the success of any peer-to-peer
marketplace.
Its initial focus is on serving college students.
In conclusion, the proposed application is more than just a tool for buying and
selling—it is a facilitator of sustainable living, economic accessibility, and
community engagement. By addressing the specific needs of college students and
providing a secure, efficient, and adaptable platform, it not only simplifies
second-hand transactions but also creates a foundation for a more sustainable
and connected society. This project holds immense potential to extend its impact
beyond colleges, setting the stage for a scalable solution that promotes
responsible consumption and a circular economy.

CHALLENGES

• Establishing trust between buyers and sellers remains a significant


challenge, requiring reliable user verification and fraud prevention

30
mechanisms.
• Ensuring the quality and accuracy of listed items can be difficult,
particularly in preventing the sale of damaged or irrelevant goods.
• Addressing disputes between users in a fair and timely manner poses an
operational challenge.
• Managing platform scalability as the user base grows may require robust
server infrastructure and optimized data handling systems.

FUTURE SCOPE

In the future, the application can integrate advanced features such as AI-based
recommendations, dynamic pricing suggestions, and sustainability metrics to
highlight environmental impact. Additionally, expanding the platform beyond
college communities to cater to niche markets or broader populations could
significantly enhance its utility and impact.

REFERENCES
1. Hanafi, A., Al-Banjari, K. A., & Mahfuz, T. W. (2022). Analysis Of Shariah
Compliant E-Commerce Models On The C2c Business Model At Tokopedia
Salam. Asian Journal Of Social And Humanities, 1(02), 76-84.

2. Ahmadi, Hermawan. 2013. E-Business & E-Commerce. Denpasar:Andi.

3. G.J. Udo and G.P. Marquis, "Factors affecting e-commerce website


effectiveness", Journal of Computer Information Systems, vol. 42, pp. 10-
16, Feb. 2002.

4. Jonathan W. Palmer, "Web site usability design and performance


metrics", Information System Research, vol. 13, pp. 151-167, Jun. 2002.

5. Kevin Keeker, Improving web site usability and appeal, September 2008.

6. Rami, M., Kleanthi, L., & Nikolaos M. “Applying a Multicriteria Satisfaction


Analysis Approach Based on User Preferences to Rank Usability Attributes
in E-tourism Websites” Journal of theoretical and applied electronic
commerce research”, 7 (3), 28-48, 2012.

31
7. Leonard, L. N. K. “Attitude influencers in c2c E-commerce: buying and
selling, „Journal of Computer Information Systems”, 52 (3), 11-17, 2012.

8. Haque, M.E. “Online Shopping usability and customer expectation- A study


on online shopping service in Bangladesh”, 2014. Retrieved on 07.07.2014
from bada.hb.se/bitstream/2320/13535/1/2013MAGI0 3.pdf.

9. Hannah, B. and Lybecker, K.M. “Determinants of recent online purchasing


and the percentage of income spent online”, International Business
Research, 3 (4), 60-71, 2010.

10. Chu, H. “A conceptual model of motivations for consumer resale on


C2C websites”. Service Industries Journal‟, 33 (15/16), 1527-1543, 2013.

32

You might also like