Skip to content

RicardoRibeirorr/netflix-clone-laravel-angular

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NetflixClone

Clone of the streaming platform Netflix. Fully functional frontend & backend, movies and series, video player, lazy-loading and scroll loading, and more...! This repository was created for learning purposes and you use it at your own risk. I am not responsible for any illegality.

application interface

🚀 Tecnologies

💻 About

Recreate the complete Netflix platform. Laravel as backend API and Angular as client frontend. Code to extract episodes from web pages (animefire.net) is also available in the "scrapper" folder. Note: I am not responsible for any illegality, this repository is only for testing skills. All data from catalogs like title, description, cover, background photo and rating were extracted using the API TMDb.

Funcionalities

  • Authentication: Login; Token, guards, middleware.

  • Data Request: Data return with lazy-loading, pagination with scroll and button. Includes: search, movies, series, latest, top, continue watching. "Favorites" is still in development.

  • Player: Includes all controls (i.e. back, pause, volume, +10sec, -10sec, next episode and fullscreen). Button of next episode and automatic episode passage after 6sec. Passage of episodes between seasons is included.

  • Dashboard: Currently, all content will have to be added either through seeds or directly into the database.

💪 Showcase

application interface

application interface

application interface

application interface

application interface

application interface

📥 Installation and execution

Make a clone of this repository and access the directory. For the development environment, you should have 2 prompt/vscode windows open, for each environment (backend & frontend)

Make sure you have installed:

  • composer
  • node
  • npm
  • local sql like: XAMPP; WAMPP; MAMPP
    • Also to run locally, you need to allow php.ini to include sqlite (search online, pretty simple)

Frontend

Access the "client" directory

cd client

Install packages

npm install

Serve the application

ng serve

Note: In case you running errors about the "hash" like i do, use the following command and then serve:

$env:NODE_OPTIONS="--openssl-legacy-provider"

ng serve

Backend

Access the "server" directory

cd server

Rename the ".env.example" to ".env"

Rename:
.env.example    ->   .env

Install packages de composer

composer install

Generate app key & create storage link

php artisan key:generate

php artisan storage:link

Migrate the database & seed(base seeds added)

php artisan migrate:fresh --seed

Run backend

php artisan serve

📥 Test Startup

If you ran the seeds, there should be 1 user available and some series and movies. Have fun, Good hacking!

email:RicardoRibeiroRR@github.com
pass:password

Note: The password is "password". I'm very original when it comes to this xD

💪 Contribute

fork and clone the project from your user.

# Cloning project
$ git clone https://github.com/YOUR-USERNAME/netflix-clone-laravel-angular.git

# Creating a branch
$ git branch my-change

# Accessing the new branch
$ git checkout -bmy-change

# Adding the changed files
$ git add .

# Creating commit and message
$ git commit -m "Correction...."

# Sending changes to the branch
$ git push origin my-change

You should navigate to your forked repository and click the New pull request button on the left side of the page.

📝 Licença

This project is licensed under the MIT license. See the LICENSE file for more details.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published