Section 1 : Introduction and Recommendations

Lecture 1 INTRODUCTION TO BRAINMEASURES PROCTOR SYSTEM
Lecture 2 About Laravel Versions (OPTIONAL) 00:01:48 Duration
Lecture 3 Setup Recommendations and Course Prerequisites 00:03:52 Duration
Lecture 4 Code Editor Visual Studio Code Setup and Recomm 00:05:59 Duration
Lecture 5 Course Source Code 00:02:23 Duration
Lecture 6 Additional Learning Resource (Cheat Sheet, Diag 00:01:41 Duration

Section 2 : Windows Specific Setup

Lecture 1 Windows - Setting Up XAMPP (PHPApacheMySQL) 00:03:15 Duration
Lecture 2 Windows - PHP in the Command Line 00:02:36 Duration
Lecture 3 Windows - Composer 00:01:54 Duration

Section 3 : Mac Specific Setup

Lecture 1 Mac - Setting Up XAMPP (PHPApacheMySQL) 00:02:58 Duration
Lecture 2 Mac - PHP in the Command Line 00:04:26 Duration
Lecture 3 Mac - Composer 00:01:39 Duration

Section 4 : Creating the New Laravel Project

Lecture 1 Creating New Laravel Project Using Composer

Section 5 : Windows - Setting Up Local Domain (OPTIONAL!)

Lecture 1 Windows - Setting Up Virtual Host in Apache 00:04:21 Duration
Lecture 2 Windows - Setting Up Host on the System 00:01:42 Duration

Section 6 : Mac - Setting Up Local Domain (OPTIONAL!)

Lecture 1 Mac - Setting Up Virtual Host in Apache 00:03:20 Duration
Lecture 2 Mac - Setting Up Host on the System 00:02:16 Duration

Section 7 : Laravel Introduction

Lecture 1 Laravel Project Structure Overview 00:03:24 Duration
Lecture 2 Artisan Command 00:03:11 Duration

Section 8 : Routing

Lecture 1 Understanding Routing in Laravel 00:01:56 Duration
Lecture 2 Defining Routes 00:03:04 Duration
Lecture 3 Managing and Naming Routes 00:02:54 Duration
Lecture 4 Route Parameters 00:03:26 Duration
Lecture 5 Optional Route Parameters 00:03:39 Duration
Lecture 6 Constraining Possible Route Parameters Values 00:04:11 Duration

Section 9 : Templating and Views

Lecture 1 Understanding Templating, Views and Blade 00:05:26 Duration
Lecture 2 Template Inheritance and Layouts 00:07:48 Duration
Lecture 3 Passing and Rendering Data in Templates 00:04:57 Duration
Lecture 4 Simple View Rendering Routes 00:02:06 Duration
Lecture 5 Conditional Rendering 00:03:28 Duration
Lecture 6 Conditional Rendering Alternatives 00:03:26 Duration
Lecture 7 Loops in Templates 00:06:21 Duration
Lecture 8 More Control Inside Loops 00:06:16 Duration
Lecture 9 Partial Templates (Including Templates) 00:04:10 Duration
Lecture 10 Partial Templates in Loops

Section 10 : Request and Response

Lecture 1 Responses, Codes, Headers, and Cookies 00:04:58 Duration
Lecture 2 Redirect Responses 00:04:18 Duration
Lecture 3 Returning JSON 00:01:21 Duration
Lecture 4 Returning File Downloads 00:02:28 Duration
Lecture 5 Grouping Routes 00:03:23 Duration
Lecture 6 Request Input (Reading User Input) 00:04:32 Duration
Lecture 7 Request Input - An Overview of Options 00:01:45 Duration
Lecture 8 Middleware - Running Code Before & After Reque 00:04:20 Duration

Section 11 : Controllers

Lecture 1 Controllers 00:05:08 Duration
Lecture 2 Single Action Controllers 00:01:57 Duration
Lecture 3 Resource Controllers 00:01:31 Duration
Lecture 4 Implementing a Resource Controller 00:05:39 Duration

Section 12 : Configuration & Environments

Lecture 1 Configuration and Environments Overview 00:03:46 Duration
Lecture 2 Configuring the Database Connection 00:03:28 Duration

Section 13 : Databases - Introduction & Migrations

Lecture 1 Databases Bird's Eye Overview 00:01:46 Duration
Lecture 2 Migrations Overview 00:02:40 Duration
Lecture 3 Creating and Running Migrations 00:05:05 Duration

Section 14 : Databases - Eloquent ORM

Lecture 1 Understanding Eloquent ORM Models 00:02:09 Duration
Lecture 2 Models - Creating and Updating, Introducing Ti 00:03:20 Duration
Lecture 3 Models - Retrieving Single Model 00:02:11 Duration
Lecture 4 Models - Retrieving Multiple Models and Collec 00:02:17 Duration
Lecture 5 Models - Using the Query Builder 00:04:14 Duration
Lecture 6 Practical - List of Blog Posts and Single Blog 00:03:21 Duration

Section 15 : Forms (Markup, CSRF, Validation, Errors, Flash Messages, Mas

Lecture 1 Forms Markup 00:04:14 Duration
Lecture 2 Cross Site Request Forgery Explained 00:04:30 Duration
Lecture 3 Forms - Storing Submitted Data 00:03:37 Duration
Lecture 4 Forms - Input Validation 00:04:01 Duration
Lecture 5 Forms - Displaying Validation Errors 00:02:50 Duration
Lecture 6 Forms - Form Request Classes 00:03:22 Duration
Lecture 7 Session Flash Messages 00:02:16 Duration
Lecture 8 Forms - Old Input Helper 00:01:29 Duration
Lecture 9 FormsModels - Model Mass Assignment 00:05:17 Duration

Section 16 : CRUD - Editing, Updating and Deleting

Lecture 1 CRUD - Edit Form 00:08:57 Duration
Lecture 2 CRUD - Update Action 00:03:39 Duration
Lecture 3 CRUD - Deleting Using Forms 00:04:51 Duration
Lecture 4 CRUD - Deleting Models

Section 17 : Assets & Styling (JavaScript, CSS, Laravel Mix, Bootstrap)

Lecture 1 Introduction to Laravel Mix 00:03:30 Duration
Lecture 2 Installing Bootstrap CSS Framework 00:02:15 Duration
Lecture 3 Using NPM and Compiling Assets With MixWebpack 00:03:29 Duration
Lecture 4 Including Assets in Views 00:01:30 Duration
Lecture 5 Versioned Assets (Cache Improvements) 00:02:57 Duration
Lecture 6 Introduction to Bootstrap CSS 00:02:14 Duration
Lecture 7 Understanding CSS Flexbox in General and in Bo 00:03:24 Duration
Lecture 8 Layout Grid and Styling Header Bar 00:08:03 Duration
Lecture 9 Styling Forms 00:02:56 Duration
Lecture 10 Styling Post List Page 00:02:56 Duration
Lecture 11 Styling Single Post Page 00:03:13 Duration
Lecture 12 Styling Flash Messages and Error Messages 00:01:54 Duration

Section 18 : Testing Basics

Lecture 1 Testing 00:07:03 Duration
Lecture 2 Testing configuration and environment 00:04:50 Duration
Lecture 3 Writing first functional test 00:07:17 Duration
Lecture 4 Testing database interactions 00:08:14 Duration
Lecture 5 Testing store() action (model creation) 00:07:41 Duration
Lecture 6 Testing for failure 00:05:35 Duration
Lecture 7 Testing update() action (model updates) 00:07:21 Duration
Lecture 8 Testing delete() action (model deletion) 00:05:19 Duration

Section 19 : One to One Eloquent Relations

Lecture 1 One to One relation with migration 00:08:47 Duration
Lecture 2 One to One assigning relationship 00:08:44 Duration
Lecture 3 One to One querying relationship 00:07:38 Duration

Section 20 : One to Many Eloquent Relations

Lecture 1 One to Many relation with migration 00:07:22 Duration
Lecture 2 One to Many assigning relationship 00:05:58 Duration
Lecture 3 One to Many querying relationship 00:05:24 Duration

Section 21 : Querying Basics

Lecture 1 Lazy Loading vs Eager Loading 00:07:20 Duration
Lecture 2 Querying relationship existence 00:07:43 Duration
Lecture 3 Querying relationship absence 00:03:57 Duration
Lecture 4 Counting related models 00:05:11 Duration
Lecture 5 Using withCount() in practice (fetching count 00:05:12 Duration

Section 22 : Model Factories

Lecture 1 Model Factory introduction 00:12:05 Duration
Lecture 2 Model Factory states 00:14:53 Duration
Lecture 3 Model Factory callbacks (afterCreating, after 00:08:41 Duration
Lecture 4 Application Implementing comment list

Section 23 : Authentication

Lecture 1 IMPORTANT Laravel 7 and Laravel 8 Changes
Lecture 2 Authentication overview 00:12:26 Duration
Lecture 3 How user registration works in Laravel 00:15:38 Duration
Lecture 4 Guard component and how logging users in work 00:16:57 Duration
Lecture 5 Custom registration form and Auth routes 00:07:45 Duration
Lecture 6 Formatting validation errors 00:07:49 Duration
Lecture 7 RedirectIfAuthenticated middleware 00:03:15 Duration
Lecture 8 Log-in form with Remember Me feature 00:07:12 Duration
Lecture 9 Logging out, @guest directive, debugging CSRF 00:11:42 Duration
Lecture 10 Retrieving the currently authenticated user 00:04:32 Duration
Lecture 11 Protecting routes (requiring authentication) 00:05:12 Duration
Lecture 12 Testing routes that require authentication 00:10:20 Duration

Section 24 : Database Seeding

Lecture 1 Refreshing database, database foreign keys an 00:14:45 Duration
Lecture 2 Problem SQLite test database NOT NULL problem 00:02:31 Duration
Lecture 3 Database seeding basics 00:05:37 Duration
Lecture 4 Using Model Factory inside Seeder 00:05:43 Duration
Lecture 5 Model relations inside seeder 00:10:20 Duration
Lecture 6 Individual seeder classes 00:08:52 Duration
Lecture 7 Making seeder interactive 00:11:52 Duration

Section 25 : Deleting Models and Soft Deletes

Lecture 1 Deleting related model using model events 00:06:03 Duration
Lecture 2 Deleting related models using cascadig 00:05:22 Duration
Lecture 3 Soft deletes 00:04:58 Duration
Lecture 4 Soft deletes querying 00:06:43 Duration
Lecture 5 Restoring soft deleted model 00:10:43 Duration
Lecture 6 Testing soft deleted models 00:03:06 Duration

Section 26 : Authorization, Policies, Gates

Lecture 1 Authorization introduction 00:06:14 Duration
Lecture 2 Introduction to Gates 00:08:47 Duration
Lecture 3 Using authorize() helper 00:02:52 Duration
Lecture 4 Verifying permissions of the user 00:04:12 Duration
Lecture 5 Admin users and overriding permissions 00:13:11 Duration
Lecture 6 Policies introduction 00:11:37 Duration
Lecture 7 Policy or Gate 00:14:01 Duration
Lecture 8 Verifying permissions in Blade templates 00:05:46 Duration
Lecture 9 Using middleware to authorize routes 00:10:37 Duration
Lecture 10 Application updating tests 00:06:24 Duration

Section 27 : Query Scopes - Local & Global

Lecture 1 Application setting user_id for the new BlogP 00:03:49 Duration
Lecture 2 Global Query Scopes introduction 00:09:06 Duration
Lecture 3 Global Query Scopes and potential issues 00:10:40 Duration
Lecture 4 Local Query Scopes introduction 00:10:01 Duration
Lecture 5 Practical Local Query Scope - most commented 00:09:56 Duration
Lecture 6 Practical Local Query Scope - most active use 00:10:04 Duration
Lecture 7 Practical Local Query Scope - most active use 00:12:16 Duration
Lecture 8 Practical Global Query Scope - admin can see 00:15:31 Duration

Section 28 : Laravel Blade Components

Lecture 1 Blade Components introduction 00:09:33 Duration
Lecture 2 Component aliases 00:03:34 Duration
Lecture 3 Conditional rendering in Component 00:05:31 Duration
Lecture 4 Practical creating reusable component for dat 00:08:19 Duration
Lecture 5 Complicated example of conditional rendering 00:10:10 Duration
Lecture 6 Application Fixing an issue with HAVING claus 00:02:08 Duration

Section 29 : Caching

Lecture 1 Caching introduction 00:08:02 Duration
Lecture 2 Laravel Debugbar 00:10:31 Duration
Lecture 3 Storing data in cache 00:11:16 Duration
Lecture 4 Removing from cache 00:07:17 Duration
Lecture 5 Cache facade 00:04:04 Duration
Lecture 6 Practical using cache as storage 00:06:46 Duration
Lecture 7 Practical using cache for storage implementat 00:13:26 Duration
Lecture 8 Using and setting up Redis as cache storage 00:10:26 Duration
Lecture 9 Cache tags introduction 00:06:11 Duration
Lecture 10 Practical using cache tags 00:08:27 Duration

Section 30 : Many to Many Eloquent Relations

Lecture 1 ManyToMany introduction 00:02:39 Duration
Lecture 2 ManyToMany migration 00:05:38 Duration
Lecture 3 Defining ManyToMany on models 00:03:37 Duration
Lecture 4 Associating models in ManyToMany 00:10:36 Duration
Lecture 5 Querying the ManyToMany relation and Pivot ta 00:07:31 Duration
Lecture 6 Practical displaying the list of tags using 00:06:16 Duration
Lecture 7 Practical list of blog posts by tag 00:10:22 Duration
Lecture 8 Blade View Composers 00:08:39 Duration
Lecture 9 View Composer with @include 00:07:59 Duration
Lecture 10 ManyToMany seeding 00:14:05 Duration

Section 31 : Wrap Up #1 (Reusable Components, Query Scopes, Route Model B

Lecture 1 Practical User to Comment OneToMany relation 00:07:01 Duration
Lecture 2 Practical comments form and reusable errors c 00:09:06 Duration
Lecture 3 Route Model Binding 00:13:33 Duration
Lecture 4 Eager loading nested relationships 00:08:31 Duration
Lecture 5 Converting repeating queries to query scopes 00:03:37 Duration

Section 32 : File Storage and Uploading

Lecture 1 File Storage introduction 00:09:49 Duration
Lecture 2 File upload form 00:02:17 Duration
Lecture 3 Handling file uploads 00:09:06 Duration
Lecture 4 Using Storage facade to store files 00:10:41 Duration
Lecture 5 Getting the URL of stored file 00:10:02 Duration
Lecture 6 Practical Image model, OneToOne relation and 00:08:23 Duration
Lecture 7 Uploaded image URL 00:06:35 Duration
Lecture 8 Practical Displaying uploaded image and styli 00:05:20 Duration
Lecture 9 Deleting files 00:05:06 Duration
Lecture 10 Validating uploaded files (size, type, dimens 00:06:19 Duration

Section 33 : One to One Polymorphic Eloquent Relation

Lecture 1 Section intrduction 00:02:14 Duration
Lecture 2 Practical Scaffolding UserController and User 00:12:14 Duration
Lecture 3 Practical Views for showingediting user profi 00:13:47 Duration
Lecture 4 OneToOne Polymorphic explained 00:04:06 Duration
Lecture 5 OneToOne Polymorphic migration 00:06:27 Duration
Lecture 6 OneToOne Polymorphic defining relation 00:02:43 Duration
Lecture 7 OneToOne Polymorphic associating 00:04:02 Duration
Lecture 8 Practical OneToOne Polymorphic with BlogPost 00:13:02 Duration

Section 34 : One to Many Polymorphic Eloquent Relation

Lecture 1 OneToMany Polymorphic explained 00:02:03 Duration
Lecture 2 OneToMany Polymorphic migration & relation 00:06:15 Duration
Lecture 3 OneToMany Polymorphic associating 00:09:56 Duration
Lecture 4 Practical OneToMany Polymorphic views 00:14:22 Duration
Lecture 5 Practical Running tests on MySQL database 00:07:28 Duration
Lecture 6 OneToMany Polymorphic seeder 00:07:18 Duration

Section 35 : Many to Many Polymorphic Eloquent Relation

Lecture 1 ManyToMany Polymorphic explained 00:05:48 Duration
Lecture 2 ManyToMany Polymorphic migration 00:14:53 Duration
Lecture 3 ManyToMany Polymorphic relations 00:05:12 Duration
Lecture 4 Understanding model Traits 00:04:20 Duration
Lecture 5 Creating Taggable model trait 00:19:16 Duration

Section 36 : Sending E-mails

Lecture 1 Development setup for sending emails 00:06:21 Duration
Lecture 2 The Mailable class explained 00:10:19 Duration
Lecture 3 Rendering e-mail content and e-mail sending 00:10:27 Duration
Lecture 4 Attaching files & data to e-mails
Lecture 5 Embedding an image inside the e-mail 00:05:22 Duration
Lecture 6 Markdown Mailable classes explained 00:04:55 Duration
Lecture 7 Creating the Markdown Mailable class 00:09:23 Duration
Lecture 8 Custom Markdown e-mail component and styling 00:07:08 Duration
Lecture 9 Rendering e-mail previews in browser 00:02:11 Duration

Section 37 : Queues and Background Processing

Lecture 1 Queues and background processing introduction 00:08:13 Duration
Lecture 2 Configuring queues, creating and running the 00:10:07 Duration
Lecture 3 Optional e-mail queuing and execution delay 00:05:18 Duration
Lecture 4 Dealing with failed jobs 00:09:55 Duration
Lecture 5 Creating and dispatching custom jobs 00:06:07 Duration
Lecture 6 Implementing custom job that dispatches other 00:17:05 Duration
Lecture 7 Rate Limiting queues 00:16:04 Duration
Lecture 8 Named queues and prioritizing 00:06:15 Duration

Section 38 : Observers, Events, Listeners, Subscribers

Lecture 1 Model Observers 00:11:07 Duration
Lecture 2 Events and Listeners 00:08:52 Duration
Lecture 3 Practical Custom Event and Listener 00:10:31 Duration
Lecture 4 Second example of Event and Listener 00:09:52 Duration
Lecture 5 Logging basics in Laravel 00:07:10 Duration
Lecture 6 Handling built-in Laravel events with Subscri 00:08:21 Duration

Section 39 : Localization (Translations)

Lecture 1 Localization introduction and demo 00:04:41 Duration
Lecture 2 Configuring locale and translation overview 00:04:41 Duration
Lecture 3 Translating plural forms, passing data 00:13:47 Duration
Lecture 4 Storing translations in JSON 00:05:50 Duration
Lecture 5 Translating the application 00:07:47 Duration
Lecture 6 INTRODUCTION TO BRAINMEASURES PROCTOR SYSTEM
Lecture 7 About Certification
Lecture 8 Adding language to URL through Apache configu 00:09:34 Duration

Section 40 : Service, Service Container, Facades, Contracts

Lecture 1 What is a Service and creating a custom one 00:07:07 Duration
Lecture 2 Service Container in practice 00:09:56 Duration
Lecture 3 Basic Dependency Injection 00:08:15 Duration
Lecture 4 Dependency Injection and Contracts 00:12:16 Duration
Lecture 5 Contracts explained 00:10:43 Duration
Lecture 6 Facades explained 00:07:47 Duration

Section 41 : Model serialization and Postman

Lecture 1 Postman - a quite long introduction 00:16:48 Duration
Lecture 2 How Model serialization works 00:05:58 Duration
Lecture 3 Hiding model attributes 00:04:48 Duration
Lecture 4 Serializing model relations 00:05:45 Duration

Section 42 : API Resources

Lecture 1 API Resources introduction 00:09:35 Duration
Lecture 2 Serializing model relations using a Resource 00:04:33 Duration
Lecture 3 Limiting serialization only to eager loaded 00:03:01 Duration
Lecture 4 Conditional serialization of properties 00:03:23 Duration

Section 43 : API in Laravel

Lecture 1 API routes and controllers 00:14:40 Duration
Lecture 2 Practice defining API routes 00:16:49 Duration
Lecture 3 Returning a resource collection and response 00:04:58 Duration
Lecture 4 Collection pagination 00:03:50 Duration
Lecture 5 Collection pagination and custom parameters 00:04:23 Duration
Lecture 6 Storing a new resource 00:07:39 Duration
Lecture 7 API Tokens explained and implemented 00:15:32 Duration
Lecture 8 Returning one, updating and deleting resource 00:08:55 Duration
Lecture 9 Handling 404 (resource not found) 00:09:39 Duration
Lecture 10 API Authorization 00:16:19 Duration

Section 44 : Testing APIs

Lecture 1 Testing API GET methods, verifying JSON struc 00:11:24 Duration
Lecture 2 Testing API GET methods, verifying JSON struc 00:08:08 Duration
Lecture 3 Test API storing (POST) resources, authentica 00:10:17 Duration

Section 45 : OLD LEGACY SECTION - Laravel Essentials 101

Lecture 1 Laravel 8 Breaking Changes!
Lecture 2 Routes, Views & Layouts 00:13:49 Duration
Lecture 3 View Routes, Route Parameters, Rendering Data 00:14:33 Duration
Lecture 4 Named routes and generating URLs 00:06:29 Duration
Lecture 5 Controller basics 00:10:06 Duration
Lecture 6 Database configuration and environment variab 00:08:41 Duration
Lecture 7 Introduction to database migrations 00:09:26 Duration
Lecture 8 Creating and managing migrations 00:12:45 Duration
Lecture 9 Laravel Tinker and Eloquent models 00:11:49 Duration
Lecture 10 Creating, updating and reading data and makin 00:12:37 Duration
Lecture 11 Resource controllers 00:11:57 Duration
Lecture 12 Blade directives @if, @foreach, dates 00:18:12 Duration
Lecture 13 Forms and CSRF tokens
Lecture 14 Redirects 00:03:10 Duration
Lecture 15 Session flash messages 00:04:34 Duration
Lecture 16 Validation basics 00:05:58 Duration
Lecture 17 Displaying validation errors 00:07:04 Duration
Lecture 18 Form requests 00:06:01 Duration
Lecture 19 Mass assignment in Eloquent model 00:04:29 Duration
Lecture 20 old() helper in forms 00:03:03 Duration
Lecture 21 Creating data editing forms 00:11:38 Duration