Report On The Project
Report On The Project
A
Project Report
On
Netflix Clone Website
Submitted In Partial Fulfilment of the requirements for the award of degree of
Bachelor of Technology
In
Information Technology
From
Affiliated to
1
Candidate’s Delaration
I hereby declare that the work, which is being presented in the Major Project, entitled "Blogging site
using Django Framework" in partial fulfilment for the award of Degree of "Bachelor of Technology"
in Department of Computer Science & Engineering and submitted to the Department of Computer
Science & Engineering. Engineering college of Bikaner, Bikaner Technical University is a record of my
own investigations carried under the Guidance of Mr. Pratap Singh Barth, Department of Computer
Science & Engineering, Engineering college of Bikaner.
I have not submitted the matter presented in this report anywhere for the award of
any other Degree.
Roll.no : 19EEBIT021
Roll.no : 19EEBIT029
CERTIFICATE
This is to certify that the project titled “ NETFLIX CLONE ” is the bonafide
work carried out by
Mohd Afjal Roll no 19EEBIT021, Rais Ahmed Khokhar Roll no 19EEBIT029
student of 8th semester Information Technology in
Engineering College Bikaner, Bikaner, affiliated to BTU
Bikaner Technical University (India) during the academic session 2023.
Date:
Introduction
4
Hardware Specification 10
Code 19
Outputs/Results 26
References 29
Conclusion 30
INTRODUCTION
Netflix Clone is an on-demand video streaming app solution that helps to
launch your own ondemand
OTT platform like Netflix, where you can watch unlimited movies & TV shows
for one
low month to month cost. Netflix Clone broadcasts movies and TV shows over
the Internet to
new locations with enormous audiences. Netflix Clone Script’s multi-lingual
ability also allows
the broadcasting of movies and programs in regional languages.
The entertainment industry is the largest online service business in the market.
Netflix Clone is
packaged with fascinating features that are of the essence for a flourishing
online streaming
website. It allows users to watch TV shows, movies online offering different
types of shows like
drama, thriller, action, murder/mystery, comedy, documentaries and enjoy
watching it on HD
anytime, anywhere they want.
Features:
1. Looks similar to Netflix.
2. Dynamic site run on Node.js server.
3. Dedicated Dynamic Movies Info page.
4. Has movie trailers, and recommendations.
5. Has smooth card slid
1. History of Netflix
NODE.JS
Node.js is an open-source, cross-platform, back-end Javascript runtime-
environment that
runs on JavaScript Engine i.e. V8 engine and executes JavaScript code outside a
web browser,
which was designed to build scalable network applications. Node.js lets
developers use
JavaScript to write command line tools and for server-side scripting - running
scripts serverside
to produce dynamic web page content before the page is sent to the user's
web browser.
HTML 5
HTML stands for HyperText Markup Language. It is used to design web pages
using a markup
language. HTML is the combination of Hypertext and Markup language.
Hypertext defines
the link between web pages. A markup language is used to define the text
document within
the tag which defines the structure of web pages. This language is used to
annotate text so
that a machine can understand it and manipulate text accordingly. The
language uses tags to
define what manipulation has to be done on the text. HTML is a markup
language used by
the browser to manipulate text, images, and other content, in order to display
it in the
required format. HTML was created by Tim Berners-Lee in 1991. The first-ever
version of
HTML was HTML 1.0, but the first standard version was HTML 2.0, published in
1995.
CSS
Cascading Style Sheets, fondly referred to as CSS, is a simply designed language
intended to
simplify the process of making web pages presentable. CSS allows you to apply
styles to web
pages. More importantly, CSS enables you to do this independent of the HTML
that makes up
each web page. It describes how a webpage should look: it prescribes colors,
fonts, spacing, and much more. In short, you can make your website look
however you want. CSS lets
developers and designers define how it behaves, including how elements are
positioned in
the browser.
JAVASCRIPT
JavaScript is a lightweight, cross-platform, and interpreted compiled
programming language
which is also known as the scripting language for webpages. It is well-known
for the
development of web pages, many non-browser environments also use it.
JavaScript can be
used for Client-Side developments as well as Server-Side developments.
Javascript is both
imperative and declarative type of language. JavaScript contains a standard
library of
objects, like Array, Date, and Math, and a core set of language elements
like operators, control structures, and statements.
REACT JS
ReactJS is an open-source, component-based front end library responsible only
for the view
layer of the application. It is maintained by Facebook. It uses a declarative
paradigm that
makes it easier to reason about your application and aims to be both efficient
and flexible. It
designs simple views for each state in your application, and React will
efficiently update and
render just the right component when your data changes. The declarative view
makes your
code more predictable and easier to debug. A React application is made of
multiple
components, each responsible for rendering a small, reusable piece of HTML.
Nested Routing: React Router DOM supports nested routing, allowing you to
create complex navigational structures. You can nest routes within each other,
defining parent-child relationships. This enables you to build hierarchical UI
structures and render different components based on nested URLs. Nested
routing helps in organizing and modularizing your application, making it more
scalable and manageable.
URL Parameters and Query Strings: React Router DOM allows you to define
dynamic segments in your URLs using parameters. You can specify
placeholders in the route paths, and React Router DOM will match those
segments and pass them as props to the corresponding components. This is
useful when you have dynamic data in your URLs, such as user IDs or post
slugs. Additionally, React Router DOM provides utilities to parse and access
query string parameters from the URL.
Navigation and Linking: React Router DOM includes the Link component,
which provides a convenient way to create clickable links that navigate to
different routes within your application. It handles URL changes without
causing a full page reload, resulting in a smooth and efficient user experience.
The Link component also supports additional features like styling active links
based on the current URL.
Enabling bookmarkable URLs: React Router DOM helps in creating URLs that
can be bookmarked or shared. Each route in your application is associated with
a unique URL, allowing users to directly access specific pages without
navigating through the entire application.
Supporting browser history: React Router DOM manages the browser history
and provides methods to navigate back and forth, replace URLs, and
programmatically trigger route changes. This enables smooth navigation within
your application and improves the overall user experience.
AXIOS:
Axios is a popular JavaScript library that allows you to make HTTP requests
from a web browser or Node.js. It simplifies the process of sending
asynchronous HTTP requests and handling responses.
Here are some common use cases for the Axios library:
Fetching data from a server: Axios provides a simple and straightforward way
to make GET requests to retrieve data from a server. You can use it to fetch
data from APIs, retrieve JSON data, or download files.
Sending data to a server: Axios supports various HTTP methods like POST, PUT,
PATCH, and DELETE, allowing you to send data to a server for processing or
updating resources. It handles the serialization of data and setting appropriate
request headers.
Handling responses: Axios allows you to handle responses from the server
easily. It provides methods to access response headers, status codes, and the
response body. You can extract data from JSON responses, handle errors, and
perform actions based on the response status.
Setting request headers: You can set custom headers in your requests using
Axios. This is useful for authentication, passing tokens, or setting specific
content types.
Handling errors and timeouts: Axios provides a way to handle errors that occur
during the request process. It allows you to catch errors and perform
appropriate actions, such as displaying error messages or retrying requests. It
also supports setting timeouts for requests to prevent them from hanging
indefinitely.
Interceptors: Axios supports interceptors, which are functions that allow you
to intercept and modify requests or responses globally. Interceptors can be
used for tasks such as adding authentication headers, logging requests, or
handling error responses consistently.
These are just some of the common use cases for the Axios library. It provides
a convenient and flexible API for handling HTTP requests in JavaScript
applications.
CODE:
APP JS Code
console.log(user);
return (
<Router>
<Switch>
path={ROUTES.SIGN_IN}
>
<Signin />
path={ROUTES.SIGN_UP}
>
<Signup />
</IsUserRedirect>
<Browse />
</ProtectedRoute>
<Home />
</IsUserRedirect>
</Switch>
</Router>
);
CSS Code
margin: 0;
.app {
background-color: #111;
/* .App {
text-align: center;
.App-logo {
height: 40vmin;
pointer-events: none;
.App-logo {
.App-header {
background-color: #282c34;
min-height: 100vh;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
color: white;
.App-link {
color: #61dafb;
} @keyframes App-logo-spin {
from {
transform: rotate(0deg);
to {
transform: rotate(360deg);
Index Code
body {
margin: 0;
sans-serif;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
code {
monospace;
import "slick-carousel/slick/slick.css";
import "slick-carousel/slick/slick-theme.css";
var settings = {
dots: true,
infinite: true,
slidesToShow: 6,
slidesToScroll: 1,
// autoplay: true,
autoplaySpeed: 1500,
pauseOnHover: true,
responsive: [
{
breakpoint: 1536,
settings: {
slidesToShow: 6,
slidesToScroll: 3,
infinite: true,
dots: true,
adaptiveHeight: true,
},
},
breakpoint: 1170,
settings: {
slidesToShow: 5,
slidesToScroll: 3,
infinite: true,
dots: true,
},
},
breakpoint: 1024,
settings: {
slidesToShow: 4,
slidesToScroll: 3,
infinite: true,
dots: true,
},
},
{
breakpoint: 768,
settings: {
slidesToShow: 3,
slidesToScroll: 3,
infinite: true,
dots: true,
},
},
breakpoint: 600,
settings: {
slidesToShow: 2,
slidesToScroll: 1,
initialSlide: 2,
},
},
breakpoint: 480,
settings: {
slidesToShow: 1,
slidesToScroll: 1,
},
},
],
};
const image_Base_Url = "https://image.tmdb.org/t/p/w500";
`https://api.themoviedb.org/3/discover/movie?with_genres=28&api_key=${key}`
);
setDetails(response.data);
};
useEffect(() => {
getDetails();
}, []);
return (
Action Movies
</h1>
<Slider {...settings}>
{details &&
details?.results &&
details?.results.map((movie) => {
return (
<div key={movie.id}>
<h1>{movie.original_title}</h1>
<Link to={`/category/${movie.id}`}>
<img
src={`${image_Base_Url}/${movie.poster_path}`}
alt=""
/>
</Link>
</div>
);
})}
</Slider>
</div>
);
};
https://www.geeksforgeeks.org
https://github.com/topics/netflix-clone
https://www.youtube.com/
https://www.alphansotech.com/
https://www.streamhash.com/
https://www.udemy.com/
https://www.coursera.org/
https://www.javapoint.com/
Conclusion