Zephyr PDF
Zephyr PDF
ON
FULL STACK WEB DESIGNING
Submitted b y:
Mohammed Radheef A H
1 |Pa ge
ACKNOWLEDGEMENT
I believe that my project will be complete only after I thank the people who
have helped me in making this project successful.
I would like to take the opportunity to express my humble gratitude to
the employees of Zephyr Technology under whom I executed this project.
Because of their constant guidance and willingness to share their vast
knowledge made me understand this project and its manifestations in great
depths and helped to complete the assigned tasks.
MOHAMMED
RADHEEF A H
2|Page
INTRODUCTION ABOUT THE COMPANY
Their tools are professionalism, skills and expertise that translate into
delivering quality work at every step for any project we undertake. They
work towards getting better than the best out of every team member at
ZEPHYR TECHNOLOGIES, which means when you hire the mall round
quality is assured off as you want it. Their advantage quality includes
protection of intellectual for the source codes developed specifically for
your business. They do not sell the source codes to the third parties and all
elements that they create for your web solution belongs to you.
ZEPHYR TECHNOLOGIES project managers and business analysts place
great value for building a clean communication link with you as they
consider it the key ingredient for the success of any project at hand.
ABSTRACT
4|Page
Table of Contents
Contents
Page No
Title Page
1
Acknowledgement
2
Abstract
4
Table of Contents
5
Introduction
6-13
Methodology
14-16
Implementation
17-21
Results
22-25
Conclusion
26-27
CHAPTER: 1
INTRODUCTION
1.1 Introduction:
As part of an internship training program, I developed a fully functional E-
commerce web application inspired by Myntra using the MERN
(MongoDB, Express.js, React.js, and Node.js) stack. The primary goal of
this project was to understand the complete lifecycle of a web application,
including backend integration, database management, and frontend UI
development. The platform allows users to browse through a wide variety of
fashion products, view product details, and add items to their shopping cart.
I implemented user authentication features including registration and login
functionality. The product data is stored in MongoDB and fetched
dynamically using Express APIs. React was used to build reusable
components and ensure a smooth single-page application experience. Styling
was handled with clean CSS to provide a simple and intuitive user interface.
This project emphasized working with RESTful APIs and managing state
efficiently using React hooks and the Context API. On the backend,
Express.js handles routes for user authentication, product management, and
cart
functionality, while MongoDB stores user and product data. The admin
interface supports direct insertion of product details via MongoDB Compass,
enabling smooth data updates. Users can browse products, view detailed
information, and add items to their cart with ease. The shopping experience is
enhanced by a clean and responsive layout, ensuring a smooth interface across
devices. Passwords are securely hashed using bcrypt, and Axios manages
seamless communication between frontend and backend.
6|Page
In today's digital age, users prefer shopping from the comfort of their homes rather
than visiting physical stores. However, building a full-featured and user-friendly e-
commerce platform is a complex task. Many developers struggle with integrating
frontend and backend systems efficiently. This project aims to replicate key features
of Myntra using the MERN stack. It offers product browsing, detailed views, user
registration/login, and cart functionalities. The goal is to provide a seamless
shopping experience through a responsive and well-structured web application.
HTML (Hyper Text Markup Language) is the standard language used to create
and structure content on the web. It tells the browser how to display text,
images, links, and other elements on a web pages.
Basic Concepts of HTML:
• Attributes: Tags can include attributes to give extra information, such as links
to other pages or descriptions of images.
•
Nesting: HTML elements can be placed inside other elements. This helps
group content in a logical way, like putting a list of items inside a list
container.
Headings and Paragraphs: Headings (from largest to smallest) and
•
paragraphs help organize the content and make it readable.
• Lists, Images, and Links: HTML allows the use of bullet or numbered lists,
the insertion of images, and links to other pages or websites.
• Comments: Developers can add notes in the code that are not shown in the
browser—these are called comments.
1.3.2 CSS:
• Styling Content: CSS changes how HTML elements look. For example, it
can make text red, center it on the screen, or give a background color.
• Selectors: CSS targets specific HTML elements using selectors—this tells the
browser which part of the webpage to style.
•
Box Model: Every HTML element is treated as a box with margins, borders,
padding, and content. Understanding this helps with layout and spacing.
Positioning and Layout: CSS allows you to place elements where you want
•
them on the page using techniques like Flexbox, Grid, or positioning rules
(static, relative, absolute, fixed).
Responsiveness: CSS makes websites adjust to different screen sizes (like
•
phones or tablets) using media queries.
8|Page
1.3.4. JAVASCRIPT:
METHODOLOGY
The project was developed using the MERN stack, focusing on building a
scalable and responsive E-commerce platform like Myntra. The backend APIs
were built using Node.js and Express.js, with MongoDB storing all user,
product, and order data. The frontend was created using React.js, ensuring a
dynamic user experience. Axios was used for seamless API communication,
while Mongoose handled data modeling. Authentication and secure password
handling were implemented using JWT and bcrypt.
a. Requirement Analysis:
• Selected the MERN stack (MongoDB, Express, React, Node.js) for its
flexibility and scalability.
• Defined the UI layout inspired by Myntra’s design for familiarity and ease of
navigation.The aim was to deliver a clean, responsive, and user-friendly
interface.
b. Environment Setup:
14 | P a g e
• Set up the frontend using Create React App and organized it into components
and pages.Installed tools like axios and react-router-dom for API handling and
routing.
c. Backend Development:
• Created RESTful API endpoints for user auth, product management, cart
operations, and orders.Ensured proper routing using Express and organized
routes into separate modules
d. Frontend Development:
• Built React components like Navbar, Home, and ProductDetail to structure the
UI efficiently.This approach promotes reusability and better project
organization.
• Used React Router for smooth client-side routing across pages. It enables
single-page application behavior for fast navigation. Applied CSS for clean UI
design and responsiveness.
• Styled components with CSS and ensured responsiveness using Flexbox. This
makes the UI adaptable to different screen sizes and devices.
• Connected frontend to backend using Axios for real-time data. Ensured
product data, user data, and cart info load dynamically.
e. Product Management:
• Fetched product data from the backend and displayed it on Home.Users can
browse items with images, price, and description.
• Displayed cart items with image, name, quantity, and total price. Allowed
users to remove items or adjust quantity in cart.These updates reflect instantly
with proper state management.
f. User Authentication:
• Created Register and Login forms with form validation. Secured user data
and issued JWT tokens upon successful login.
16 | P a g e
CHAPTER: 3
IMPLEMENTATION
1.React JS
cd project-name
npm start
6. Create Components
8. Add Routing
2.Mongo DB
18 | P a g e
• Created a cluster on MongoDB Atlas for
cloud-based database hosting.
2. Connecting Backend
3. CRUD Operations
npm init -y
2. Install Express.js
• Add this code below the route to make your server listen on
port 5000
app.listen(5000, () => {
node index.js
3.1 Working This E-commerce project begins on the front-end with a user-
friendly React
interface that allows users to browse products. The Home page displays a
search bar which filter’s products based on search and product listings fetched
dynamically from the backend using Axios. Users can view product details by
clicking on any product card, which routes them to a detailed product page.
From there, they can select desired items and add them to the cart using
context-based state management.
The cart page updates dynamically as users add or remove items. Users need to
register or log in to proceed with the order placement.Once logged in, the user
can proceed to the Order Page, where they input shipping details like address,
city, and country. On clicking the "Place Order" button, all the order data
including user ID, cart items, and shipping info is sent to the backend. The
backend, built with Node.js and Express.js, processes this request. It stores the
20 | P a g e
order in MongoDB through Mongoose models and schema. After the order
is placed, the user is redirected to a success page. This entire flow ensures a
secure and structured order system.
The backend also provides APIs for user authentication, product listing, cart
operations, and order placement. MongoDB Atlas acts as the cloud database,
storing user details, products, and order records. Admins or users can later view
the list of orders placed from the Orders page, which pulls the data based on the
logged-in user's ID. The project structure is modular, separating concerns into
routes, models, and controllers. It demonstrates full-stack functionality and
smooth interaction between the client and server. Overall, it gives a real-world
shopping experience with essential E-commerce features.
CHAPTER: 4
RESULTS
The login page enables users to authenticate using their credentials to access their
accounts and shopping preferences. It ensures that users can manage their profile,
22 | P a g e
Fig 3.2: Registration Page
details like email, username, and password. Once registered, users gain access
23 | P a g e
The home page serves as the landing page for users, displaying featured
24 | P a g e
The product detail page provides users with detailed information about a
selected product, including its image, description, price, and stock availability.
It allows users to add the item to their cart and proceed with the purchase.
The cart page displays all the products added by the user and calculates the
total price for the order. It gives users the option to proceed to checkout or
25 | P a g e
CHAPTER: 5
CONCLUSION
26 | P a g e
This project can serve as a foundation for more complex systems like payment
integration, admin panels, or inventory management. It stands as a practical
application of internship-level training in web development.
27 | P a g e