Frontend Project
Frontend Project
An INTERNSHIP REPORT on
( WEB DEVELOPMENT )
UNDERTAKEN
INVIGO INFOTECH
Submitted by : Submitted to :
NAME :- GAUTAM KUMAR THAKUR Prof. RAJU KUMAR
( H.O.D. of CSE & AI )
Reg. No. :- 22151131022
Semester :- 5 th
Branch :- CSE(AI)
Session :- 2022 – 26
Submitted by : Submitted to :
NAME :- GAUTAM KUMAR THAKUR Prof. RAJU KUMAR
Reg. No. :- 22151131022 ( H.O.D. of CSE & AI )
Semester :- 5th
Branch :- CSE(AI)
Session :- 2022 – 26
Page
Internship Certificate provided by the Institute ………... (01-03)
Declaration ..…………………………………………………. (04-04)
Acknowledgement ………………………………………….... (05-05)
Abstract ……………………………………………………….. (06-06)
Weekly report …………………………………………………. (07-08)
Table of Contents …………………………………………….. (09-09)
H L ............................. (10-19)
.................................. (20-27)
B ........................ (28-31)
Jv ....................... (31-36)
J ....................... (36-39)
....................... (40-46)
MODULE 1 :- HTML
Introduction:
HTML (HyperText Markup Language) is the standard markup language used to create web
pages. It provides the structure of a webpage, allowing you to define and organize content such
as text, images, and links. HTML is not a programming language; it's a markup language that
tells the browser how to display the content.
Objective:
• Build Web Page Structure: Create the basic framework of websites using HTML
elements.
• Enable Browser Communication: Understand how browsers display HTML
content.
• Integrate with Other Technologies: Work with CSS for styling and JavaScript for
interactivity.
• Improve SEO: Use HTML to optimize content for search engines.
• Enhance Collaboration: Communicate effectively with web development teams
and manage CMS content.
• Empower Creativity: Customize and experiment with web designs.
<html lang="en">
<head>
<meta charset="UTF-8">
</head>
<body>
<h1>Welcome to My Website</h1>
</body>
</html>
HTML Attributes:-
HTML elements can have attributes that provide additional information about the element.
Attributes are placed within the opening tag and usually come in name/value pairs like
name="value". Common attributes include:
• Used to define headings, with <h1> being the most important (usually the main title)
and <h6> the least.
• Example:
<h1>Main Heading</h1>
<h2>Subheading</h2>
2. Paragraphs (<p>):-
• Example:
• Strong (<strong>): Emphasizes text with strong importance (often rendered as bold).
Example: <strong>Strong Text</strong>
4. Lists:
o Example:
<ul>
<li>Item 1</li>
<li>Item 2</li>
<li>Item 3</li>
</ul>
o Example:
<ol>
<li>First item</li>
<li>Second item</li>
<li>Third item</li>
</ol>
5. Blockquotes (<blockquote>):
• Used for quoting a section of text from another source, usually indented.
• Example:
<blockquote>
</blockquote>
• Line Break (<br>): Inserts a line break within text, moving content to the next line.
• Horizontal Line (<hr>): Creates a horizontal line, often used to separate content
sections.
Example: <hr>
• The <a> tag is used to create hyperlinks, which can link to other web pages, files, or
sections within the same page.
• Example:
• Anchor Tags: The <a> tag is also used for creating named anchors within a page,
allowing users to jump to a specific section.
• Named Anchors: Assign an id attribute to an element, and then link to it using the #
symbol.
• Example:-
• The <img> tag is used to embed images into a webpage. This tag is self-closing and
requires a src attribute to specify the image source.
• Example:
<img src="image.jpg" alt="Description of the image">
2. Image Attributes:
• alt (Alternative Text): Provides a text description of the image, which is displayed if the
image fails to load and is used by screen readers for accessibility.
• title: Displays additional information about the image when the user hovers over it.
• width and height: Specify the dimensions of the image in pixels or percentage.
• Example:
<video width="320" height="240" controls>
</video>
• The <iframe> tag is used to embed another HTML document, video, map, or any other
content from an external source into the current page.
• Example:-
HTML Tables:-
1. Creating Tables (<table>, <tr>, <td>, <th>):
• Example:
<table>
<tr>
<th>Header 1</th>
<th>Header 2</th>
</tr>
<tr>
</tr>
<tr>
</tr>
</table>
Project:-
• number: Numeric input with optional min/max values. Example: <input type="number"
min="1" max="10">
What is CSS?
CSS stands for Cascading Style Sheets. It allows web developers to separate content from
design, making it easier to manage and maintain the look and feel of a website.
1. Separation of Concerns: CSS separates the content of the webpage (HTML) from its
presentation, making it easier to update the design without changing the content.
2. Consistency: By using CSS, you can ensure that the styling is consistent across multiple
pages of a website.
3. Responsive Design: CSS supports responsive design techniques, allowing web pages to
adapt to different screen sizes and devices.
4. Flexibility: CSS provides a wide range of properties and values to control the
appearance of web elements, from colors and fonts to complex layouts.
selector {
property: value;
property: value;
• Property: Specifies the style attribute you want to change (e.g., color, font-size).
• Value: Defines the value for the property (e.g., red, 16px).
• Inline CSS: Directly within an HTML element using the style attribute
• Internal CSS: Inside the <style> element in the HTML <head>.
• External CSS: In a separate .css file linked to the HTML document using the <link>
element.
1. CSS Selectors:
Selectors are patterns used to select the HTML elements you want to style. Some common
selectors include:
The display property specifies how an element is displayed on the web page. It affects the
layout and visibility of elements. Common values include:
• block: The element takes up the full width available and starts on a new line (e.g., <div>,
<p>). Block elements can have width and height properties.
• inline: The element only takes up as much width as necessary and does not start on a
new line (e.g., <span>, <a>). Inline elements do not accept width and height properties.
• flex: The element is a flex container, allowing the use of Flexbox layout techniques.
Flexbox enables complex layouts with flexible items.
• grid: The element is a grid container, enabling the use of Grid Layout techniques. Grid
Layout allows for creating complex grid-based designs.
Position:
The position property defines how an element is positioned in the document. Common values
include:
• static: The default positioning. Elements are positioned according to the normal flow of
the document. top, right, bottom, and left properties have no effect.
• relative: The element is positioned relative to its normal position. You can use top, right,
bottom, and left to adjust its position.
• absolute: The element is positioned relative to the nearest positioned ancestor (i.e., an
ancestor with a position other than static). If no such ancestor exists, it is positioned
relative to the initial containing block.
• fixed: The element is positioned relative to the viewport. It remains in place even when
the page is scrolled.
• sticky: The element toggles between relative and fixed positioning depending on the
user's scroll position. It is positioned relative to its nearest scrolling ancestor and
becomes fixed when it reaches a defined position.
• float: Moves an element to the left or right, allowing other content to flow around it.
Common values are left, right, and none. It is often used for wrapping text around
images.
• clear: Controls the behavior of elements that follow a floated element. Common values
are left, right, both, and none. It specifies whether an element should move below
floated elements.
z-index:
• z-index: Specifies the stack order of positioned elements (elements with a position value
other than static). Higher values are stacked on top of lower values. This property is
used to control the overlapping of elements.
4.Flexbox
Flex Container Properties:
• display: flex;: Defines the container as a flex container, enabling flexbox layout for its
children.
• flex-direction: Determines the direction of the flex items inside the container. Common
values are:
o row: Items are arranged in a row (default).
o column: Items are arranged in a column.
o row-reverse: Items are arranged in a row, but in reverse order.
o column-reverse: Items are arranged in a column, but in reverse order.
• justify-content: Aligns flex items along the main axis (the direction defined by flex-
direction). Common values are:
o flex-start: Aligns items to the start of the container.
o center: Centers items.
o space-between: Distributes items with space between them.
o space-around: Distributes items with space around them.
o space-evenly: Distributes items with equal space between and around them.
• align-self: Overrides the align-items property for a specific flex item. It allows the item
to be aligned differently along the cross axis (perpendicular to the main axis). Common
values are auto, flex-start, flex-end, center, baseline, and stretch.
• flex-grow: Defines the ability of a flex item to grow relative to the other flex items inside
the flex container. A value of 1 means the item will grow to fill available space. A value
of 0 means it will not grow.
• flex-shrink: Defines the ability of a flex item to shrink relative to the other flex items
inside the flex container. A value of 1 means the item will shrink if necessary. A value of
0 means it will not shrink.
These properties provide powerful tools for creating responsive and complex layouts with
Flexbox.
5. Grid Layout
Grid Container Properties:
• display: grid;: Defines the element as a grid container, enabling the use of grid layout
properties for its children.
• grid-template-columns: Specifies the number and size of columns in the grid container.
You can use values like pixels, percentages, or fr (fractional units) to define column sizes.
Example:
This defines a grid with three columns: 100px, 200px, and the remaining space.
• grid-template-rows: Specifies the number and size of rows in the grid container.
Example:
This defines a grid with three rows: 50px, auto height, and 200px.
font-display: swap;
color: #333;
background-color: lightblue;
Gradients:
• radial-gradient: Creates a gradient that transitions from the center outward in a circular
or elliptical shape. Example:
Background Images:
background-image: url('background.jpg');
Opacity:
• opacity: Sets the transparency level of an element. Values range from 0 (completely
transparent) to 1 (completely opaque). Example:
opacity: 0.5;
7. Animations and Transitions
CSS Transitions:
• transition-property: Specifies the CSS property to which the transition effect is applied.
Example:
transition-property: background-color;
transition-duration: 0.5s;
CSS Animations:
@keyframes slide {
to { transform: translateX(0); }
animation-name: slide;
• animation-duration: Defines the length of time for the animation to complete. Example:
animation-duration: 2s;
Transformations:
transform: rotate(45deg);
transform: translateX(50px);
8. Responsive Design
Media Queries:
• @media: Applies styles based on the characteristics of the device, such as screen width.
Example:
body {
background-color: lightgrey;
}}
Responsive Units:
• em: Relative to the font-size of the element (or the parent element if used on font-size).
• rem: Relative to the root element’s font-size.
• vw: Relative to the viewport width (1% of viewport width).
• vh: Relative to the viewport height (1% of viewport height).
Flexible Layouts:
• Bootstrap includes HTML and CSS based design templates for typography, forms,
buttons, tables, navigation, modals, image carousels and many other, as well as optional
JavaScript plugins
• Bootstrap also gives you the ability to easily create responsive designs
• Easy to use: Anybody with just basic knowledge of HTML and CSS can start using
Bootstrap
• Mobile-first approach: In Bootstrap 3, mobile-first styles are part of the core framework
Installation Methods
You can include Bootstrap in your project using various methods:
This is the simplest method and doesn’t require you to download any files.
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css"
rel="stylesheet">
2.npm (Node Package Manager):
If you are using a build system or package manager like npm, you can install Bootstrap via npm.
This method is suitable for projects that use a build tool like Webpack or Gulp.
Installation Command:
1. Grid System:-
• .container:
• .container-fluid:
o A full-width container that spans the entire width of the viewport. It does not
have fixed max-widths and adjusts fluidly.
• .row:
o A wrapper for columns. It uses negative margins to align columns with the grid
system.
• .col, .col-{breakpoint}-{number}:
• .col-{breakpoint}-{size}:
o Defines column width for different breakpoints. For example, .col-lg-4 makes the
column span 4 of the 12 columns on large screens.
2. Typography:-
• Headings (.display-{1-4}, .h1, .h2, etc.):
o Aligns text within its container. .text-center centers the text, while .text-left and
.text-right align text to the respective sides.
3. Colors:-
• Background Colors (.bg-primary, .bg-secondary, .bg-success):
o You can customize Bootstrap’s default color palette by overriding Sass variables
or adding custom CSS.
4. Forms:-
• Form Controls (.form-control):
o Groups related form controls together with margin and padding adjustments.
MODULE 4 :- JAVASCRIPT
1.Introduction to JavaScript:
JavaScript is a high-level, interpreted programming language primarily used to create
interactive and dynamic content on the web. It enables developers to manipulate the DOM
(Document Object Model), handle events, and perform asynchronous operations, making it
essential for modern web development. JavaScript can run in the browser, providing a seamless
user experience, or on the server side using platforms like Node.js.
• In the Browser:
o It allows for DOM manipulation, event handling, and communication with web
servers via AJAX or Fetch API.
o Typical uses include validating form inputs, creating interactive UI elements, and
making asynchronous network requests.
• Node.js:
o It’s commonly used for building web servers, handling file operations, and
performing backend tasks.
o Visual Studio Code (VSCode): Popular and feature-rich, with extensions for
JavaScript development
2. Web Browser:
o Ensure you have a modern web browser (e.g., Google Chrome, Mozilla Firefox)
with developer tools for debugging and testing JavaScript code.
o Download and install Node.js from the official website. This will also install npm,
the Node.js package manager, which is useful for managing project
dependencies.
o Inside the directory, create an index.html file for HTML content and a script.js file
for JavaScript code.
<script src="script.js"></script>
With this setup, you’re ready to start writing and testing JavaScript code in your chosen
environment.
2.Basics Of Javascript:-
Variables:
let y = 20;
const z = 30;
Data Types:
• Primitive Types:
let undef;
• Object Types:
function greet(name) {
Operators:
o +, -, *, /, %
let sum = 5 + 3; // 8
4.Control Structures:-
Conditional Statements:
// code to execute
if (condition1) {
} else if (condition2) {
• else: Executes a block of code if none of the preceding conditions are true.
if (condition) {
} else {
Loops:
// code to execute
Example: React.js is a popular JavaScript library developed by Facebook for building user
interfaces, particularly single-page applications where a responsive and dynamic experience is
essential. Introduced in 2013, React has revolutionized how developers build and manage
complex UIs by emphasizing component-based architecture.
2. Overview of React.js:
• History and Evolution: Trace the development of React from its inception to the
present.
Create React App is a tool that sets up a new React project with a sensible default
configuration. To install React using Create React App, follow these steps:
o Before setting up React, ensure you have Node.js and npm installed on your
system. You can download them from the official Node.js website.
Install Create React App Globally: Open your terminal or command prompt and run:
This command creates a new directory called my-app with a React boilerplate.
cd my-app
npm start
4.Core Features
• Component-Based Architecture:
o Example: Functional components are simple functions returning JSX, while class
components provide more features like lifecycle methods. Both can be used to
create reusable UI elements.
• Virtual DOM:
o Benefit: This approach reduces the number of direct manipulations of the real
DOM, leading to improved performance and faster rendering of updates.
MODULE 6:- FINAL PROJECT
An e-commerce project typically involves creating an online platform where users can browse,
select, and purchase products or services. Here’s a high-level overview of what an e-commerce
project entails:
1. Project Overview:-
• Purpose: To build an online store that allows users to browse products, add them to a
cart, and complete purchases.
• Target Users: Consumers looking to buy products online, and administrators managing
the store.
2. Key Components:-
• The user interface of the online store, including product pages, cart, checkout, and user
accounts.
• Pages: Home, Product Listing, Product Details, Cart, Checkout, User Login/Signup, User
Profile.
• Features: Responsive design, search functionality, product filters, shopping cart
management.
3.Implementaion Of Project:-
1. Set Up Environment: Install necessary tools and frameworks (e.g., React for frontend,
Node.js ) and configure the development environment.
2. Design UI/UX: Create responsive and intuitive user interfaces for product listings, cart,
checkout, and user accounts using HTML, CSS, and JavaScript.
Explanation:-
• Imports: The code imports various components and pages, including navigation,
routing, and context providers.
o Router Setup: BrowserRouter manages routing, and Routes defines the different
routes for the application.
o Routes:
The App component sets up the main structure and routing for the application, ensuring that
different pages and components are displayed based on the URL.
Here’s Glimpse Of My Project :-
Header:-
Footer:-
Product Section:-
Cart:-
SignUp Page:-
Reason For Choosing Web Devlopment
Choosing web development can be driven by several reasons:
1. Creativity and Innovation: Web development allows you to build creative and innovative
web applications, combining design and functionality to deliver engaging user
experiences.
2. High Demand and Career Opportunities: The demand for skilled web developers is
continuously growing, offering numerous job opportunities and career growth in various
industries.
3. Versatility: Web development covers a wide range of technologies and skills, from front-
end design to back-end programming, making it a versatile field that allows you to
specialize in various areas.
4. Remote Work Flexibility: Web development is a field that often allows for remote work,
providing flexibility in where and how you work.
5. Constant Learning: The field is ever-evolving with new tools, frameworks, and best
practices, offering continuous learning opportunities and keeping the work interesting.
FUTURE SCOPE OF WEB DEVLOPMENT
The future scope of web development is vast and promising, with several key trends and
advancements shaping the industry:
1. Progressive Web Apps (PWAs): PWAs offer a native app-like experience on the web,
and their popularity is expected to rise as businesses seek to deliver fast, reliable, and
engaging user experiences across devices.
3. Voice Search Optimization: With the growing use of voice-activated assistants like Siri,
Alexa, and Google Assistant, optimizing websites for voice search will become crucial,
impacting how content is structured and delivered.
5. Web 3.0 and Decentralized Applications: The evolution of the web towards Web 3.0,
with a focus on decentralization, blockchain technology, and distributed applications
(dApps), will open new opportunities and require developers to learn new technologies.
6. Increased Demand for Web Accessibility: Ensuring that websites are accessible to all
users, including those with disabilities, will continue to be a priority, driven by both legal
requirements and the goal of creating inclusive digital experiences.
7. 5G and Faster Internet Speeds: The rollout of 5G will enable faster load times and richer
web experiences, pushing developers to create more complex, interactive, and data-
heavy applications without compromising performance.
These trends suggest that web development will continue to be a dynamic and evolving field
with a strong demand for skilled professionals who can adapt to new technologies and trends.