Skip to content

Instantly share code, notes, and snippets.

View NandoKstroNet's full-sized avatar
🎯
Focusing

Nando Kstro Net NandoKstroNet

🎯
Focusing
View GitHub Profile
@NandoKstroNet
NandoKstroNet / VideosController.php
Created October 23, 2025 15:46
Processos básicos CRUD nos videos: VideoFlix Code Experts Laravel 12 e InertiaJS 2 em https://codeexperts.com.br
<?php
public function store(Request $request, Content $content)
{
$video = $content->videos()->create([
'code' => Str::uuid(),
'name' => $request->name,
]);
return $video;
@NandoKstroNet
NandoKstroNet / videos_migration.php
Created October 23, 2025 15:32
Videos Migration - VideoFlix com Inertia 2 e Laravel em https://codeexperts.com.br
<?php
Schema::create('videos', function (Blueprint $table) {
$table->id();
$table->foreignId('content_id')
->constrained()
->cascadeOnDelete();
$table->uuid('code');
@NandoKstroNet
NandoKstroNet / Video.js
Created October 20, 2025 23:11
Layout Tela Upload Video - VideoFlix Projeto na Code Experts em https://codeexperts.com.br
<script setup lang="ts">
import InputError from '@/components/InputError.vue';
import Button from '@/components/ui/button/Button.vue';
import Input from '@/components/ui/input/Input.vue';
import InputLabel from '@/components/ui/label/Label.vue';
import AppLayout from '@/layouts/AppLayout.vue';
import { type BreadcrumbItem } from '@/types';
import { Head, useForm } from '@inertiajs/vue3';
@NandoKstroNet
NandoKstroNet / VideoEncodingProcessJob.php
Created October 20, 2025 22:49
GIST somente para registro - Processando videos com foco em Bitrates pra cada Dimensao Suportada a Partir de 480 a 1080
<?php
namespace App\Jobs;
use App\Events\VideoEncodingFinished;
use App\Events\VideoEncodingProgress;
use App\Events\VideoEncodingStart;
use App\Models\Video;
use FFMpeg\FFProbe;
use Illuminate\Bus\Batchable;
@NandoKstroNet
NandoKstroNet / Sluggable.php
Created October 17, 2025 15:24
Trait Spatie Sluggable - VideoFlix Code Experts, saiba mais em https://codeexperts.com.br
<?php
namespace App\Traits;
use Spatie\Sluggable\HasSlug;
use Spatie\Sluggable\SlugOptions;
trait Sluggable
{
use HasSlug;
@NandoKstroNet
NandoKstroNet / Pagination.vue
Last active October 17, 2025 00:37
Componente Paginator Vue JS Laravel Starter Kit Inertia
<script setup>
import NavLink from '@/components/TextLink.vue';
defineProps({
meta: Object,
});
</script>
<template>
<div id="pagination" class="flex justify-end py-2 pr-10">
<?php
namespace Database\Factories;
use Illuminate\Database\Eloquent\Factories\Factory;
/**
* @extends \Illuminate\Database\Eloquent\Factories\Factory<\App\Models\Content>
*/
class ContentFactory extends Factory
@NandoKstroNet
NandoKstroNet / RegisterController.php
Created September 21, 2025 22:51
Sessao 4 - Laravel Primeiros Passos (Registro): https://codeexperts.com.br
<?php
namespace App\Http\Controllers\Auth;
use App\Http\Controllers\Controller;
use App\Http\Requests\Auth\RegisterRequest;
use App\Models\User;
use Illuminate\Http\Request;
class RegisterController extends Controller
@NandoKstroNet
NandoKstroNet / login.html
Last active September 21, 2025 15:39
Sessao 4 - Laravel Primeiros Passos: https://codeexperts.com.br
<div class="w-full h-full absolute flex items-center justify-center">
<div class="max-w-3xl rounded border border-gray-300 p-4 shadow">
<div class="w-96 text-center">
<h2 class="text-xl font-bold mb-6">Acessar Meus Eventos</h2>
</div>
<form action="">
<div class="w-96 mb-6">
<label for="email" class="block mb-2">E-mail</label>
<input
type="email"
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Login System</title>
</head>
<body>
<h1>Acesse sua conta</h1>