Velflix is a Laravel Netflix clone project using TALL stack (Tailwindcss, Alpinejs, Laravel, Livewire ).
Note Work in Progress
Package | Version |
---|---|
Node | V14.19.1+ |
Npm | V6.14.16+ |
Composer | V2.2.6+ |
Php | V8.0.17+ |
Mysql | V 8.0.27+ |
Warning Make sure to follow the requirements first.
Here is how you can run the project locally:
Clone this repo
git clone https://github.com/josuapsianturi/velflix.git
Go into the project root directory
cd velflix
Copy .env.example file to .env file
cp .env.example .env
Create database velflix
(you can change database name)
Create an account and get an API key themoviedb here. Make sure to copy API Read Access Token (v4 auth)
.
Go to .env
file
DB_DATABASE=velflix
, DB_USERNAME=root
, DB_PASSWORD=
)TMDB_TOKEN=(your API key)
Make sure to follow your database username and password
Install PHP dependencies
composer install
Generate key
php artisan key:generate
install front-end dependencies
npm install && npm run build
Run migration
php artisan migrate
Run seeder
php artisan db:seed
this command will create 2 users (admin and normal user):
email: [email protected] , password: password
email: [email protected] , password: password
Run server
for valet users visit
velflix.test
in your favorite browser
php artisan serve
Visit localhost:8000
in your favorite browser.
Make sure to follow your Laravel local Development Environment.
Newsletter feature configuration (optional)
.env
file. If you need help, you can follow these steps:
.env
file and paste it into MAILCHIMP_KEY=paste API key here
Route::get('ping', function() {
$mailchimp = new MailchimpMarketing\ApiClient();
$mailchimp->setConfig([
'apiKey' => config('services.mailchimp.key'),
'server' => 'us5',
]);
$response = $mailchimp->lists->getAllLists();
ddd($response);
});
make sure you fill in the
server
correctly, check the link at the top of your admin Mailchimp, for me itshttps://us5.admin.mailchimp.com/account/api/
so i give the value of server isus5
. if you get us6, change the server value to beus6
.
localhost:8000/ping
or velflix.test/ping
and copy the value of the id in the "lists" > 0 > "id"
MAILCHIMP_LIST_SUBSCRIBERS=paste id here
and we ready to golocalhost:8000
or velflix.test
test email for subscribing, and refresh your admin MailChimp it should be Your audience has increased 1 contact..env
file. if you need help, you can follow these steps:+Create Credentials
at the top > select "OAuth Client ID" > select Application type "Web Application" > Name 'velflix'http://127.0.0.1:8000/login/google/callback
> Create.NOTE: you can change the port to be
8080
or others, but make sure when you runphp artisan serve
, your project run in the same port.
Your Client ID
and Your Client Secret
.env
file and paste it in GOOGLE_CLIENT_ID=paste_here
and GOOGLE_CLIENT_SECRET=paste_here
and we ready to go
php artisan serve
Let me know if you get in trouble.
Warning Every time you run testing, you should run
php artisan db:seed
first
./vendor/bin/pest
npx cypress run
./vendor/bin/pint
./vendor/bin/psalm
./vendor/bin/phpstan analyse
Pull requests are welcome.
Velflix is an open-sourced software licensed under the MIT license