CINXE.COM

<!DOCTYPE html> <html lang="en" translate="no"> <head> <meta charset="utf-8" /> <meta name="viewport" content="width=device-width, user-scalable=no"> <link rel="apple-touch-icon" sizes="180x180" href="/favicons/apple-touch-icon.png"> <link rel="icon" type="image/png" sizes="32x32" href="/favicons/favicon-32x32.png"> <link rel="icon" type="image/png" sizes="16x16" href="/favicons/favicon-16x16.png"> <link rel="manifest" href="/favicons/site.webmanifest"> <link rel="shortcut icon" href="/favicons/favicon.ico"> <link rel="mask-icon" href="/safari-pinned-tab.svg" color="#04a4fd"> <meta name="msapplication-TileColor" content="#da532c"> <meta name="theme-color" content="#ffffff"> <link rel="preload" as="font" href="/fonts/poppins-700.woff2" crossorigin> <link rel="preload" as="font" href="/fonts/poppins-600.woff2" crossorigin> <link rel="preload" as="font" href="/fonts/poppins-500.woff2" crossorigin> <link rel="preload" as="font" href="/fonts/poppins-400.woff2" crossorigin> <link rel="preload" as="image" href="/images/home-background.svg" /> <link rel="preload" as="image" href="/images/layout-background.svg" /> <link rel="preload" as="image" href="/images/light-circle.svg" /> <link rel="preload" as="style" href="https://codecourse.com/build/assets/app-Dd_gRcwC.css" /><link rel="modulepreload" href="https://codecourse.com/build/assets/app-mCsxgZ9w.js" /><link rel="stylesheet" href="https://codecourse.com/build/assets/app-Dd_gRcwC.css" /><script type="module" src="https://codecourse.com/build/assets/app-mCsxgZ9w.js"></script> <meta name="twitter:title" content="Codecourse" inertia> <meta name="twitter:description" content="Practical screencasts for developers. Learn Laravel, Livewire, Inertia, Vue and more." inertia> <meta name="twitter:card" content="summary" inertia> <meta name="twitter:widgets:new-embed-design" content="on" inertia> <meta property="og:image" content="/images/logo-social-card.png" inertia> <meta property="twitter:image:src" content="/images/logo-social-card.png" inertia> <title inertia="">Codecourse</title> <meta name="description" content="Practical screencasts for developers. Learn Laravel, Livewire, Inertia, Vue and more." inertia="description"> <script src="https://cdn.usefathom.com/script.js" data-spa="auto" data-site="QYZIAWWB" defer></script> </head> <body> <div id="app" data-page="{&quot;component&quot;:&quot;Home/Home&quot;,&quot;props&quot;:{&quot;errors&quot;:{},&quot;auth&quot;:{&quot;user&quot;:null},&quot;toast&quot;:null,&quot;config&quot;:{&quot;app.url&quot;:&quot;https://codecourse.com&quot;},&quot;comment&quot;:null,&quot;state&quot;:{&quot;notifications_panel_open&quot;:false},&quot;activity&quot;:null,&quot;latest&quot;:[{&quot;id&quot;:569,&quot;title&quot;:&quot;Laravel Mentions&quot;,&quot;slug&quot;:&quot;laravel-mentions&quot;,&quot;description&quot;:&quot;Add mentionable functionality to your Laravel applications and mention users, projects, issues… literally anything.\r\n\r\nWe’ll start by setting up a simple comment system with Livewire, then detect, sync, notify and test mentions step-by-step. Not using Livewire? Don’t worry, the core functionality works with any stack.\r\n\r\nIf you are using Alpine/Livewire, we’ll add mention support to textareas to get a list of users we’re able to mention when we hit a trigger key.&quot;,&quot;description_short&quot;:&quot;Add mentionable functionality to your Laravel applications and mention users, projects, issues… literally anything. We’ll...&quot;,&quot;difficulty&quot;:&quot;intermediate&quot;,&quot;github_repository&quot;:&quot;https://github.com/codecourse/laravel-mentions&quot;,&quot;description_markdown&quot;:&quot;&lt;p&gt;Add mentionable functionality to your Laravel applications and mention users, projects, issues… literally anything.&lt;/p&gt;\n&lt;p&gt;We’ll start by setting up a simple comment system with Livewire, then detect, sync, notify and test mentions step-by-step. Not using Livewire? Don’t worry, the core functionality works with any stack.&lt;/p&gt;\n&lt;p&gt;If you are using Alpine/Livewire, we’ll add mention support to textareas to get a list of users we’re able to mention when we hit a trigger key.&lt;/p&gt;\n&quot;,&quot;free&quot;:false,&quot;ongoing&quot;:false,&quot;upcoming&quot;:false,&quot;type&quot;:&quot;course&quot;,&quot;type_title&quot;:&quot;Course&quot;,&quot;new&quot;:false,&quot;parts_count&quot;:14,&quot;has_new_parts&quot;:true,&quot;duration_seconds&quot;:6397,&quot;duration&quot;:{&quot;formatted&quot;:{&quot;hours&quot;:1,&quot;minutes&quot;:46,&quot;seconds&quot;:&quot;37&quot;}},&quot;url&quot;:&quot;https://codecourse.com/courses/laravel-mentions&quot;,&quot;newsletter&quot;:false,&quot;topics&quot;:[{&quot;id&quot;:8,&quot;title&quot;:&quot;Laravel&quot;,&quot;description&quot;:&quot;The PHP framework for web artisans.&quot;,&quot;slug&quot;:&quot;laravel&quot;}],&quot;replacement&quot;:null,&quot;created_at&quot;:{&quot;human&quot;:&quot;1 week ago&quot;,&quot;datetime&quot;:&quot;2025-02-06 14:03:08&quot;,&quot;date&quot;:&quot;2025-02-06&quot;,&quot;formatted&quot;:&quot;February 6th, 2025&quot;},&quot;author&quot;:{&quot;id&quot;:6,&quot;name&quot;:&quot;Alex Garrett-Smith&quot;,&quot;avatar&quot;:&quot;https://codecourse-avatars.ams3.digitaloceanspaces.com/4GqnwYOVonIz6YVfLLVtWMRFH3dB7Dyx&quot;,&quot;bio&quot;:&quot;Hey, I&#39;m the founder of Codecourse!&quot;},&quot;user&quot;:{&quot;is_saved&quot;:null,&quot;in_progress&quot;:null,&quot;last_episode&quot;:null,&quot;played_seconds&quot;:null,&quot;remaining_seconds&quot;:6397,&quot;percentage_progress&quot;:0}},{&quot;id&quot;:568,&quot;title&quot;:&quot;Building a Notification Preference System in Laravel&quot;,&quot;slug&quot;:&quot;building-a-notification-preference-system-in-laravel&quot;,&quot;description&quot;:&quot;Need to store advanced notification preferences in your application?\r\n\r\nIn this course, we cover displaying a matrix of notification groups, types and channels with the ability to sync preferences cleanly and quickly.\r\n\r\nOnce you’re done, your users will be able to choose what notifications they receive, and how.\r\n\r\nOh, and we’ll write tests to back everything up, look at how to use notification preferences in Notification classes, and how to set defaults for when users register.&quot;,&quot;description_short&quot;:&quot;Need to store advanced notification preferences in your application? In this course, we cover displaying...&quot;,&quot;difficulty&quot;:&quot;intermediate&quot;,&quot;github_repository&quot;:&quot;https://github.com/codecourse/building-a-notification-preference-system-in-laravel&quot;,&quot;description_markdown&quot;:&quot;&lt;p&gt;Need to store advanced notification preferences in your application?&lt;/p&gt;\n&lt;p&gt;In this course, we cover displaying a matrix of notification groups, types and channels with the ability to sync preferences cleanly and quickly.&lt;/p&gt;\n&lt;p&gt;Once you’re done, your users will be able to choose what notifications they receive, and how.&lt;/p&gt;\n&lt;p&gt;Oh, and we’ll write tests to back everything up, look at how to use notification preferences in Notification classes, and how to set defaults for when users register.&lt;/p&gt;\n&quot;,&quot;free&quot;:false,&quot;ongoing&quot;:false,&quot;upcoming&quot;:false,&quot;type&quot;:&quot;course&quot;,&quot;type_title&quot;:&quot;Course&quot;,&quot;new&quot;:false,&quot;parts_count&quot;:10,&quot;has_new_parts&quot;:false,&quot;duration_seconds&quot;:5031,&quot;duration&quot;:{&quot;formatted&quot;:{&quot;hours&quot;:1,&quot;minutes&quot;:23,&quot;seconds&quot;:&quot;51&quot;}},&quot;url&quot;:&quot;https://codecourse.com/courses/building-a-notification-preference-system-in-laravel&quot;,&quot;newsletter&quot;:false,&quot;topics&quot;:[{&quot;id&quot;:8,&quot;title&quot;:&quot;Laravel&quot;,&quot;description&quot;:&quot;The PHP framework for web artisans.&quot;,&quot;slug&quot;:&quot;laravel&quot;}],&quot;replacement&quot;:null,&quot;created_at&quot;:{&quot;human&quot;:&quot;2 weeks ago&quot;,&quot;datetime&quot;:&quot;2025-01-29 19:02:24&quot;,&quot;date&quot;:&quot;2025-01-29&quot;,&quot;formatted&quot;:&quot;January 29th, 2025&quot;},&quot;author&quot;:{&quot;id&quot;:6,&quot;name&quot;:&quot;Alex Garrett-Smith&quot;,&quot;avatar&quot;:&quot;https://codecourse-avatars.ams3.digitaloceanspaces.com/4GqnwYOVonIz6YVfLLVtWMRFH3dB7Dyx&quot;,&quot;bio&quot;:&quot;Hey, I&#39;m the founder of Codecourse!&quot;},&quot;user&quot;:{&quot;is_saved&quot;:null,&quot;in_progress&quot;:null,&quot;last_episode&quot;:null,&quot;played_seconds&quot;:null,&quot;remaining_seconds&quot;:5031,&quot;percentage_progress&quot;:0}},{&quot;id&quot;:561,&quot;title&quot;:&quot;Testing Inertia with Dusk&quot;,&quot;slug&quot;:&quot;testing-inertia-with-dusk&quot;,&quot;description&quot;:&quot;How do you test real flows through your Inertia applications? With end-to-end tests!\r\n\r\nIn this course, we’ll cover everything you need to know about setting up, writing and running browser-based tests. Once we’re done, we’ll configure CI (Continuous Integration) with GitHub Actions, to run your tests whenever you push new code.\r\n\r\nDon’t use Inertia? No worries — there’s plenty to learn about end-to-end tests with Dusk in here too.&quot;,&quot;description_short&quot;:&quot;How do you test real flows through your Inertia applications? With end-to-end tests! In this...&quot;,&quot;difficulty&quot;:&quot;intermediate&quot;,&quot;github_repository&quot;:&quot;https://github.com/codecourse/testing-inertia-with-dusk&quot;,&quot;description_markdown&quot;:&quot;&lt;p&gt;How do you test real flows through your Inertia applications? With end-to-end tests!&lt;/p&gt;\n&lt;p&gt;In this course, we’ll cover everything you need to know about setting up, writing and running browser-based tests. Once we’re done, we’ll configure CI (Continuous Integration) with GitHub Actions, to run your tests whenever you push new code.&lt;/p&gt;\n&lt;p&gt;Don’t use Inertia? No worries — there’s plenty to learn about end-to-end tests with Dusk in here too.&lt;/p&gt;\n&quot;,&quot;free&quot;:false,&quot;ongoing&quot;:true,&quot;upcoming&quot;:false,&quot;type&quot;:&quot;course&quot;,&quot;type_title&quot;:&quot;Course&quot;,&quot;new&quot;:false,&quot;parts_count&quot;:22,&quot;has_new_parts&quot;:false,&quot;duration_seconds&quot;:10436,&quot;duration&quot;:{&quot;formatted&quot;:{&quot;hours&quot;:2,&quot;minutes&quot;:53,&quot;seconds&quot;:&quot;56&quot;}},&quot;url&quot;:&quot;https://codecourse.com/courses/testing-inertia-with-dusk&quot;,&quot;newsletter&quot;:true,&quot;topics&quot;:[{&quot;id&quot;:28,&quot;title&quot;:&quot;Inertia&quot;,&quot;description&quot;:&quot;Create fully client-side rendered, single-page apps without the complexity of modern SPAs.&quot;,&quot;slug&quot;:&quot;inertia&quot;}],&quot;replacement&quot;:null,&quot;created_at&quot;:{&quot;human&quot;:&quot;2 months ago&quot;,&quot;datetime&quot;:&quot;2024-12-16 11:36:25&quot;,&quot;date&quot;:&quot;2024-12-16&quot;,&quot;formatted&quot;:&quot;December 16th, 2024&quot;},&quot;author&quot;:{&quot;id&quot;:6,&quot;name&quot;:&quot;Alex Garrett-Smith&quot;,&quot;avatar&quot;:&quot;https://codecourse-avatars.ams3.digitaloceanspaces.com/4GqnwYOVonIz6YVfLLVtWMRFH3dB7Dyx&quot;,&quot;bio&quot;:&quot;Hey, I&#39;m the founder of Codecourse!&quot;},&quot;user&quot;:{&quot;is_saved&quot;:null,&quot;in_progress&quot;:null,&quot;last_episode&quot;:null,&quot;played_seconds&quot;:null,&quot;remaining_seconds&quot;:10436,&quot;percentage_progress&quot;:0}},{&quot;id&quot;:565,&quot;title&quot;:&quot;Laravel Teams&quot;,&quot;slug&quot;:&quot;laravel-teams&quot;,&quot;description&quot;:&quot;Need team functionality in your Laravel application? Let’s build it from scratch.\r\n\r\nWe’ll cover the basics of creating teams, switching between them, sending secure team invites by email, and managing team members.\r\n\r\nPowering everything will be roles and permissions for each member, with the ability to switch roles directly from your team dashboard.\r\n\r\nOnce you’re done, you’ll have mastered team functionality in Laravel.&quot;,&quot;description_short&quot;:&quot;Need team functionality in your Laravel application? Let’s build it from scratch. We’ll cover the...&quot;,&quot;difficulty&quot;:&quot;intermediate&quot;,&quot;github_repository&quot;:&quot;https://github.com/codecourse/laravel-teams&quot;,&quot;description_markdown&quot;:&quot;&lt;p&gt;Need team functionality in your Laravel application? Let’s build it from scratch.&lt;/p&gt;\n&lt;p&gt;We’ll cover the basics of creating teams, switching between them, sending secure team invites by email, and managing team members.&lt;/p&gt;\n&lt;p&gt;Powering everything will be roles and permissions for each member, with the ability to switch roles directly from your team dashboard.&lt;/p&gt;\n&lt;p&gt;Once you’re done, you’ll have mastered team functionality in Laravel.&lt;/p&gt;\n&quot;,&quot;free&quot;:false,&quot;ongoing&quot;:false,&quot;upcoming&quot;:false,&quot;type&quot;:&quot;course&quot;,&quot;type_title&quot;:&quot;Course&quot;,&quot;new&quot;:false,&quot;parts_count&quot;:38,&quot;has_new_parts&quot;:false,&quot;duration_seconds&quot;:16567,&quot;duration&quot;:{&quot;formatted&quot;:{&quot;hours&quot;:4,&quot;minutes&quot;:36,&quot;seconds&quot;:&quot;07&quot;}},&quot;url&quot;:&quot;https://codecourse.com/courses/laravel-teams&quot;,&quot;newsletter&quot;:true,&quot;topics&quot;:[{&quot;id&quot;:8,&quot;title&quot;:&quot;Laravel&quot;,&quot;description&quot;:&quot;The PHP framework for web artisans.&quot;,&quot;slug&quot;:&quot;laravel&quot;}],&quot;replacement&quot;:null,&quot;created_at&quot;:{&quot;human&quot;:&quot;2 months ago&quot;,&quot;datetime&quot;:&quot;2024-11-28 09:00:36&quot;,&quot;date&quot;:&quot;2024-11-28&quot;,&quot;formatted&quot;:&quot;November 28th, 2024&quot;},&quot;author&quot;:{&quot;id&quot;:6,&quot;name&quot;:&quot;Alex Garrett-Smith&quot;,&quot;avatar&quot;:&quot;https://codecourse-avatars.ams3.digitaloceanspaces.com/4GqnwYOVonIz6YVfLLVtWMRFH3dB7Dyx&quot;,&quot;bio&quot;:&quot;Hey, I&#39;m the founder of Codecourse!&quot;},&quot;user&quot;:{&quot;is_saved&quot;:null,&quot;in_progress&quot;:null,&quot;last_episode&quot;:null,&quot;played_seconds&quot;:null,&quot;remaining_seconds&quot;:16567,&quot;percentage_progress&quot;:0}},{&quot;id&quot;:564,&quot;title&quot;:&quot;New in Inertia&quot;,&quot;slug&quot;:&quot;new-in-inertia&quot;,&quot;description&quot;:&quot;With the release of Inertia v2, let’s cover everything new — now and into the future.\r\n\r\nEach episode of this course will cover a new feature or significant change, so you’re ready to adapt and introduce new functionality into your Inertia-powered applications.&quot;,&quot;description_short&quot;:&quot;With the release of Inertia v2, let’s cover everything new — now and into the...&quot;,&quot;difficulty&quot;:&quot;beginner&quot;,&quot;github_repository&quot;:null,&quot;description_markdown&quot;:&quot;&lt;p&gt;With the release of Inertia v2, let’s cover everything new — now and into the future.&lt;/p&gt;\n&lt;p&gt;Each episode of this course will cover a new feature or significant change, so you’re ready to adapt and introduce new functionality into your Inertia-powered applications.&lt;/p&gt;\n&quot;,&quot;free&quot;:false,&quot;ongoing&quot;:false,&quot;upcoming&quot;:false,&quot;type&quot;:&quot;course&quot;,&quot;type_title&quot;:&quot;Course&quot;,&quot;new&quot;:false,&quot;parts_count&quot;:9,&quot;has_new_parts&quot;:false,&quot;duration_seconds&quot;:5236,&quot;duration&quot;:{&quot;formatted&quot;:{&quot;hours&quot;:1,&quot;minutes&quot;:27,&quot;seconds&quot;:&quot;16&quot;}},&quot;url&quot;:&quot;https://codecourse.com/courses/new-in-inertia&quot;,&quot;newsletter&quot;:true,&quot;topics&quot;:[{&quot;id&quot;:8,&quot;title&quot;:&quot;Laravel&quot;,&quot;description&quot;:&quot;The PHP framework for web artisans.&quot;,&quot;slug&quot;:&quot;laravel&quot;},{&quot;id&quot;:28,&quot;title&quot;:&quot;Inertia&quot;,&quot;description&quot;:&quot;Create fully client-side rendered, single-page apps without the complexity of modern SPAs.&quot;,&quot;slug&quot;:&quot;inertia&quot;}],&quot;replacement&quot;:null,&quot;created_at&quot;:{&quot;human&quot;:&quot;3 months ago&quot;,&quot;datetime&quot;:&quot;2024-11-14 10:43:56&quot;,&quot;date&quot;:&quot;2024-11-14&quot;,&quot;formatted&quot;:&quot;November 14th, 2024&quot;},&quot;author&quot;:{&quot;id&quot;:6,&quot;name&quot;:&quot;Alex Garrett-Smith&quot;,&quot;avatar&quot;:&quot;https://codecourse-avatars.ams3.digitaloceanspaces.com/4GqnwYOVonIz6YVfLLVtWMRFH3dB7Dyx&quot;,&quot;bio&quot;:&quot;Hey, I&#39;m the founder of Codecourse!&quot;},&quot;user&quot;:{&quot;is_saved&quot;:null,&quot;in_progress&quot;:null,&quot;last_episode&quot;:null,&quot;played_seconds&quot;:null,&quot;remaining_seconds&quot;:5236,&quot;percentage_progress&quot;:0}},{&quot;id&quot;:563,&quot;title&quot;:&quot;Real-time with Nuxt and Laravel&quot;,&quot;slug&quot;:&quot;real-time-with-nuxt-and-laravel&quot;,&quot;description&quot;:&quot;Using Reverb and Laravel Echo, let’s add real-time broadcasting to a Nuxt SPA, driven by Laravel.\r\n\r\nWe’ll start with the basics of public channels without authorization. Once we’re set up and able to broadcast to all clients perfectly, we’ll dive into authentication and authorizing private channels by modifying how Laravel Echo authorizes with our API.\r\n\r\nBy the end of the course, you’ll have everything you need to start adding real-time broadcasting to your Nuxt/Laravel applications.&quot;,&quot;description_short&quot;:&quot;Using Reverb and Laravel Echo, let’s add real-time broadcasting to a Nuxt SPA, driven by...&quot;,&quot;difficulty&quot;:&quot;intermediate&quot;,&quot;github_repository&quot;:&quot;https://github.com/codecourse/realtime-with-nuxt-and-laravel&quot;,&quot;description_markdown&quot;:&quot;&lt;p&gt;Using Reverb and Laravel Echo, let’s add real-time broadcasting to a Nuxt SPA, driven by Laravel.&lt;/p&gt;\n&lt;p&gt;We’ll start with the basics of public channels without authorization. Once we’re set up and able to broadcast to all clients perfectly, we’ll dive into authentication and authorizing private channels by modifying how Laravel Echo authorizes with our API.&lt;/p&gt;\n&lt;p&gt;By the end of the course, you’ll have everything you need to start adding real-time broadcasting to your Nuxt/Laravel applications.&lt;/p&gt;\n&quot;,&quot;free&quot;:false,&quot;ongoing&quot;:false,&quot;upcoming&quot;:false,&quot;type&quot;:&quot;course&quot;,&quot;type_title&quot;:&quot;Course&quot;,&quot;new&quot;:false,&quot;parts_count&quot;:12,&quot;has_new_parts&quot;:false,&quot;duration_seconds&quot;:3724,&quot;duration&quot;:{&quot;formatted&quot;:{&quot;hours&quot;:1,&quot;minutes&quot;:2,&quot;seconds&quot;:&quot;04&quot;}},&quot;url&quot;:&quot;https://codecourse.com/courses/real-time-with-nuxt-and-laravel&quot;,&quot;newsletter&quot;:true,&quot;topics&quot;:[{&quot;id&quot;:8,&quot;title&quot;:&quot;Laravel&quot;,&quot;description&quot;:&quot;The PHP framework for web artisans.&quot;,&quot;slug&quot;:&quot;laravel&quot;},{&quot;id&quot;:21,&quot;title&quot;:&quot;Nuxt.js&quot;,&quot;description&quot;:&quot;A framework for creating Vue.js applications.&quot;,&quot;slug&quot;:&quot;nuxt-js&quot;}],&quot;replacement&quot;:null,&quot;created_at&quot;:{&quot;human&quot;:&quot;4 months ago&quot;,&quot;datetime&quot;:&quot;2024-10-09 13:34:10&quot;,&quot;date&quot;:&quot;2024-10-09&quot;,&quot;formatted&quot;:&quot;October 9th, 2024&quot;},&quot;author&quot;:{&quot;id&quot;:6,&quot;name&quot;:&quot;Alex Garrett-Smith&quot;,&quot;avatar&quot;:&quot;https://codecourse-avatars.ams3.digitaloceanspaces.com/4GqnwYOVonIz6YVfLLVtWMRFH3dB7Dyx&quot;,&quot;bio&quot;:&quot;Hey, I&#39;m the founder of Codecourse!&quot;},&quot;user&quot;:{&quot;is_saved&quot;:null,&quot;in_progress&quot;:null,&quot;last_episode&quot;:null,&quot;played_seconds&quot;:null,&quot;remaining_seconds&quot;:3724,&quot;percentage_progress&quot;:0}},{&quot;id&quot;:562,&quot;title&quot;:&quot;New in Laravel&quot;,&quot;slug&quot;:&quot;new-in-laravel&quot;,&quot;description&quot;:&quot;Need to know what’s new in Laravel as it happens? Every episode of this course is dedicated to covering the most interesting and useful Laravel additions in detail, so you’re ready to start using them in your applications.\r\n\r\nCheck back often, and stay completely up-to-date with Laravel.&quot;,&quot;description_short&quot;:&quot;Need to know what’s new in Laravel as it happens? Every episode of this course...&quot;,&quot;difficulty&quot;:&quot;intermediate&quot;,&quot;github_repository&quot;:&quot;https://github.com/codecourse/new-in-laravel&quot;,&quot;description_markdown&quot;:&quot;&lt;p&gt;Need to know what’s new in Laravel as it happens? Every episode of this course is dedicated to covering the most interesting and useful Laravel additions in detail, so you’re ready to start using them in your applications.&lt;/p&gt;\n&lt;p&gt;Check back often, and stay completely up-to-date with Laravel.&lt;/p&gt;\n&quot;,&quot;free&quot;:false,&quot;ongoing&quot;:false,&quot;upcoming&quot;:false,&quot;type&quot;:&quot;course&quot;,&quot;type_title&quot;:&quot;Course&quot;,&quot;new&quot;:false,&quot;parts_count&quot;:21,&quot;has_new_parts&quot;:false,&quot;duration_seconds&quot;:7827,&quot;duration&quot;:{&quot;formatted&quot;:{&quot;hours&quot;:2,&quot;minutes&quot;:10,&quot;seconds&quot;:&quot;27&quot;}},&quot;url&quot;:&quot;https://codecourse.com/courses/new-in-laravel&quot;,&quot;newsletter&quot;:true,&quot;topics&quot;:[{&quot;id&quot;:8,&quot;title&quot;:&quot;Laravel&quot;,&quot;description&quot;:&quot;The PHP framework for web artisans.&quot;,&quot;slug&quot;:&quot;laravel&quot;}],&quot;replacement&quot;:null,&quot;created_at&quot;:{&quot;human&quot;:&quot;4 months ago&quot;,&quot;datetime&quot;:&quot;2024-09-26 09:07:29&quot;,&quot;date&quot;:&quot;2024-09-26&quot;,&quot;formatted&quot;:&quot;September 26th, 2024&quot;},&quot;author&quot;:{&quot;id&quot;:6,&quot;name&quot;:&quot;Alex Garrett-Smith&quot;,&quot;avatar&quot;:&quot;https://codecourse-avatars.ams3.digitaloceanspaces.com/4GqnwYOVonIz6YVfLLVtWMRFH3dB7Dyx&quot;,&quot;bio&quot;:&quot;Hey, I&#39;m the founder of Codecourse!&quot;},&quot;user&quot;:{&quot;is_saved&quot;:null,&quot;in_progress&quot;:null,&quot;last_episode&quot;:null,&quot;played_seconds&quot;:null,&quot;remaining_seconds&quot;:7827,&quot;percentage_progress&quot;:0}},{&quot;id&quot;:559,&quot;title&quot;:&quot;Laravel Subscriptions&quot;,&quot;slug&quot;:&quot;laravel-subscriptions-with-cashier&quot;,&quot;description&quot;:&quot;Learn to start accepting subscriptions with Laravel and build a solid foundation for your next application. In fact, it’s exactly how we do things here on Codecourse!\r\n\r\nEven if you’re completely new to Laravel, by the end of this course you’ll have a platform where customers can purchase subscriptions and gain access to restricted areas of your application.\r\n\r\nWe’ll also cover managing subscriptions, cancellations, invoices, giving customers trial periods — and more.&quot;,&quot;description_short&quot;:&quot;Learn to start accepting subscriptions with Laravel and build a solid foundation for your next...&quot;,&quot;difficulty&quot;:&quot;beginner&quot;,&quot;github_repository&quot;:&quot;https://github.com/codecourse/laravel-subscriptions&quot;,&quot;description_markdown&quot;:&quot;&lt;p&gt;Learn to start accepting subscriptions with Laravel and build a solid foundation for your next application. In fact, it’s exactly how we do things here on Codecourse!&lt;/p&gt;\n&lt;p&gt;Even if you’re completely new to Laravel, by the end of this course you’ll have a platform where customers can purchase subscriptions and gain access to restricted areas of your application.&lt;/p&gt;\n&lt;p&gt;We’ll also cover managing subscriptions, cancellations, invoices, giving customers trial periods — and more.&lt;/p&gt;\n&quot;,&quot;free&quot;:false,&quot;ongoing&quot;:false,&quot;upcoming&quot;:false,&quot;type&quot;:&quot;course&quot;,&quot;type_title&quot;:&quot;Course&quot;,&quot;new&quot;:false,&quot;parts_count&quot;:26,&quot;has_new_parts&quot;:false,&quot;duration_seconds&quot;:9499,&quot;duration&quot;:{&quot;formatted&quot;:{&quot;hours&quot;:2,&quot;minutes&quot;:38,&quot;seconds&quot;:&quot;19&quot;}},&quot;url&quot;:&quot;https://codecourse.com/courses/laravel-subscriptions-with-cashier&quot;,&quot;newsletter&quot;:true,&quot;topics&quot;:[{&quot;id&quot;:8,&quot;title&quot;:&quot;Laravel&quot;,&quot;description&quot;:&quot;The PHP framework for web artisans.&quot;,&quot;slug&quot;:&quot;laravel&quot;}],&quot;replacement&quot;:null,&quot;created_at&quot;:{&quot;human&quot;:&quot;4 months ago&quot;,&quot;datetime&quot;:&quot;2024-09-18 20:23:49&quot;,&quot;date&quot;:&quot;2024-09-18&quot;,&quot;formatted&quot;:&quot;September 18th, 2024&quot;},&quot;author&quot;:{&quot;id&quot;:6,&quot;name&quot;:&quot;Alex Garrett-Smith&quot;,&quot;avatar&quot;:&quot;https://codecourse-avatars.ams3.digitaloceanspaces.com/4GqnwYOVonIz6YVfLLVtWMRFH3dB7Dyx&quot;,&quot;bio&quot;:&quot;Hey, I&#39;m the founder of Codecourse!&quot;},&quot;user&quot;:{&quot;is_saved&quot;:null,&quot;in_progress&quot;:null,&quot;last_episode&quot;:null,&quot;played_seconds&quot;:null,&quot;remaining_seconds&quot;:9499,&quot;percentage_progress&quot;:0}},{&quot;id&quot;:560,&quot;title&quot;:&quot;Cloudflare Turnstile with Livewire&quot;,&quot;slug&quot;:&quot;cloudflare-turnstile-with-livewire&quot;,&quot;description&quot;:&quot;In this mini-course, we’ll walk through setting up and adding Cloudflare Turnstile to our Livewire forms.\r\n\r\nTurnstile is a reCAPTCHA alternative, and thanks to a handy package, we’ll have it set up in no time, ready to apply to any form.\r\n\r\nOnce we’re done, we’ll take a look at configuring the widget and adding custom validation rules to display to the user if the verification fails.&quot;,&quot;description_short&quot;:&quot;In this mini-course, we’ll walk through setting up and adding Cloudflare Turnstile to our Livewire...&quot;,&quot;difficulty&quot;:&quot;beginner&quot;,&quot;github_repository&quot;:&quot;https://github.com/codecourse/cloudflare-turnstile-with-livewire&quot;,&quot;description_markdown&quot;:&quot;&lt;p&gt;In this mini-course, we’ll walk through setting up and adding Cloudflare Turnstile to our Livewire forms.&lt;/p&gt;\n&lt;p&gt;Turnstile is a reCAPTCHA alternative, and thanks to a handy package, we’ll have it set up in no time, ready to apply to any form.&lt;/p&gt;\n&lt;p&gt;Once we’re done, we’ll take a look at configuring the widget and adding custom validation rules to display to the user if the verification fails.&lt;/p&gt;\n&quot;,&quot;free&quot;:true,&quot;ongoing&quot;:false,&quot;upcoming&quot;:false,&quot;type&quot;:&quot;course&quot;,&quot;type_title&quot;:&quot;Course&quot;,&quot;new&quot;:false,&quot;parts_count&quot;:6,&quot;has_new_parts&quot;:false,&quot;duration_seconds&quot;:1115,&quot;duration&quot;:{&quot;formatted&quot;:{&quot;hours&quot;:0,&quot;minutes&quot;:18,&quot;seconds&quot;:&quot;35&quot;}},&quot;url&quot;:&quot;https://codecourse.com/courses/cloudflare-turnstile-with-livewire&quot;,&quot;newsletter&quot;:false,&quot;topics&quot;:[{&quot;id&quot;:8,&quot;title&quot;:&quot;Laravel&quot;,&quot;description&quot;:&quot;The PHP framework for web artisans.&quot;,&quot;slug&quot;:&quot;laravel&quot;},{&quot;id&quot;:26,&quot;title&quot;:&quot;Livewire&quot;,&quot;description&quot;:&quot;A full-stack framework for Laravel that makes building dynamic interfaces simple.&quot;,&quot;slug&quot;:&quot;laravel-livewire&quot;}],&quot;replacement&quot;:null,&quot;created_at&quot;:{&quot;human&quot;:&quot;5 months ago&quot;,&quot;datetime&quot;:&quot;2024-09-16 12:10:40&quot;,&quot;date&quot;:&quot;2024-09-16&quot;,&quot;formatted&quot;:&quot;September 16th, 2024&quot;},&quot;author&quot;:{&quot;id&quot;:6,&quot;name&quot;:&quot;Alex Garrett-Smith&quot;,&quot;avatar&quot;:&quot;https://codecourse-avatars.ams3.digitaloceanspaces.com/4GqnwYOVonIz6YVfLLVtWMRFH3dB7Dyx&quot;,&quot;bio&quot;:&quot;Hey, I&#39;m the founder of Codecourse!&quot;},&quot;user&quot;:{&quot;is_saved&quot;:null,&quot;in_progress&quot;:null,&quot;last_episode&quot;:null,&quot;played_seconds&quot;:null,&quot;remaining_seconds&quot;:1115,&quot;percentage_progress&quot;:0}},{&quot;id&quot;:558,&quot;title&quot;:&quot;Job Batching Progress with Laravel&quot;,&quot;slug&quot;:&quot;job-batching-progress-with-laravel&quot;,&quot;description&quot;:&quot;Let’s tackle how to batch tasks in Laravel, change their state as they complete, and display step-by-step progress in the UI.\r\n\r\nUsing job batching we’ll create, dispatch and monitor a list of sequential jobs — changing their state using model states. We’ll also take this a step further to allow batch variations based on different tasks, and the ability to easy swap around the order of tasks.\r\n\r\nAt the end of the course, we’ll set up a UI with Livewire to poll the state of our batch, displaying progress to the user (and if anything goes wrong).\r\n\r\nSimply put, if you’re building something that requires step-by-step jobs to be run and you need to display progress to the user — this course covers absolutely everything you’ll need to know.&quot;,&quot;description_short&quot;:&quot;Let’s tackle how to batch tasks in Laravel, change their state as they complete, and...&quot;,&quot;difficulty&quot;:&quot;advanced&quot;,&quot;github_repository&quot;:&quot;https://github.com/codecourse/job-batching-progress-with-laravel&quot;,&quot;description_markdown&quot;:&quot;&lt;p&gt;Let’s tackle how to batch tasks in Laravel, change their state as they complete, and display step-by-step progress in the UI.&lt;/p&gt;\n&lt;p&gt;Using job batching we’ll create, dispatch and monitor a list of sequential jobs — changing their state using model states. We’ll also take this a step further to allow batch variations based on different tasks, and the ability to easy swap around the order of tasks.&lt;/p&gt;\n&lt;p&gt;At the end of the course, we’ll set up a UI with Livewire to poll the state of our batch, displaying progress to the user (and if anything goes wrong).&lt;/p&gt;\n&lt;p&gt;Simply put, if you’re building something that requires step-by-step jobs to be run and you need to display progress to the user — this course covers absolutely everything you’ll need to know.&lt;/p&gt;\n&quot;,&quot;free&quot;:false,&quot;ongoing&quot;:false,&quot;upcoming&quot;:false,&quot;type&quot;:&quot;course&quot;,&quot;type_title&quot;:&quot;Course&quot;,&quot;new&quot;:false,&quot;parts_count&quot;:18,&quot;has_new_parts&quot;:false,&quot;duration_seconds&quot;:5879,&quot;duration&quot;:{&quot;formatted&quot;:{&quot;hours&quot;:1,&quot;minutes&quot;:37,&quot;seconds&quot;:&quot;59&quot;}},&quot;url&quot;:&quot;https://codecourse.com/courses/job-batching-progress-with-laravel&quot;,&quot;newsletter&quot;:false,&quot;topics&quot;:[{&quot;id&quot;:8,&quot;title&quot;:&quot;Laravel&quot;,&quot;description&quot;:&quot;The PHP framework for web artisans.&quot;,&quot;slug&quot;:&quot;laravel&quot;},{&quot;id&quot;:26,&quot;title&quot;:&quot;Livewire&quot;,&quot;description&quot;:&quot;A full-stack framework for Laravel that makes building dynamic interfaces simple.&quot;,&quot;slug&quot;:&quot;laravel-livewire&quot;}],&quot;replacement&quot;:null,&quot;created_at&quot;:{&quot;human&quot;:&quot;5 months ago&quot;,&quot;datetime&quot;:&quot;2024-09-11 08:21:58&quot;,&quot;date&quot;:&quot;2024-09-11&quot;,&quot;formatted&quot;:&quot;September 11th, 2024&quot;},&quot;author&quot;:{&quot;id&quot;:6,&quot;name&quot;:&quot;Alex Garrett-Smith&quot;,&quot;avatar&quot;:&quot;https://codecourse-avatars.ams3.digitaloceanspaces.com/4GqnwYOVonIz6YVfLLVtWMRFH3dB7Dyx&quot;,&quot;bio&quot;:&quot;Hey, I&#39;m the founder of Codecourse!&quot;},&quot;user&quot;:{&quot;is_saved&quot;:null,&quot;in_progress&quot;:null,&quot;last_episode&quot;:null,&quot;played_seconds&quot;:null,&quot;remaining_seconds&quot;:5879,&quot;percentage_progress&quot;:0}}],&quot;featured&quot;:[{&quot;id&quot;:492,&quot;title&quot;:&quot;Laravel Actions&quot;,&quot;slug&quot;:&quot;laravel-actions&quot;,&quot;description&quot;:&quot;Actions are single classes that do *one thing*. Laravel Actions is a package that allows you to run these classes as *anything* you want, whether it&#39;s a controller, listener, console command – or just on its own.\r\n\r\nKeeping your app structure to single classes like this lets you focus on what your app does rather than the design decisions around controllers, listeners and commands.\r\n\r\nSingle actions are also easier to test, and we&#39;ll also cover that!\r\n\r\nThis course is for you if:\r\n* You&#39;d like to try a fresh approach to structuring your apps\r\n* Your app shares logic, and you&#39;d like to combine this logic into one class that runs anywhere\r\n* You&#39;ve heard of (or used) Laravel Actions, and you&#39;d like a run-through&quot;,&quot;description_short&quot;:&quot;Actions are single classes that do *one thing*. Laravel Actions is a package that allows...&quot;,&quot;difficulty&quot;:&quot;beginner&quot;,&quot;github_repository&quot;:&quot;https://github.com/codecourse/laravel-actions&quot;,&quot;description_markdown&quot;:&quot;&lt;p&gt;Actions are single classes that do &lt;em&gt;one thing&lt;/em&gt;. Laravel Actions is a package that allows you to run these classes as &lt;em&gt;anything&lt;/em&gt; you want, whether it&#39;s a controller, listener, console command – or just on its own.&lt;/p&gt;\n&lt;p&gt;Keeping your app structure to single classes like this lets you focus on what your app does rather than the design decisions around controllers, listeners and commands.&lt;/p&gt;\n&lt;p&gt;Single actions are also easier to test, and we&#39;ll also cover that!&lt;/p&gt;\n&lt;p&gt;This course is for you if:&lt;/p&gt;\n&lt;ul&gt;\n&lt;li&gt;You&#39;d like to try a fresh approach to structuring your apps&lt;/li&gt;\n&lt;li&gt;Your app shares logic, and you&#39;d like to combine this logic into one class that runs anywhere&lt;/li&gt;\n&lt;li&gt;You&#39;ve heard of (or used) Laravel Actions, and you&#39;d like a run-through&lt;/li&gt;\n&lt;/ul&gt;\n&quot;,&quot;free&quot;:false,&quot;ongoing&quot;:false,&quot;upcoming&quot;:false,&quot;type&quot;:&quot;course&quot;,&quot;type_title&quot;:&quot;Course&quot;,&quot;new&quot;:false,&quot;parts_count&quot;:12,&quot;has_new_parts&quot;:false,&quot;duration_seconds&quot;:3728,&quot;duration&quot;:{&quot;formatted&quot;:{&quot;hours&quot;:1,&quot;minutes&quot;:2,&quot;seconds&quot;:&quot;08&quot;}},&quot;url&quot;:&quot;https://codecourse.com/courses/laravel-actions&quot;,&quot;newsletter&quot;:false,&quot;topics&quot;:[{&quot;id&quot;:8,&quot;title&quot;:&quot;Laravel&quot;,&quot;description&quot;:&quot;The PHP framework for web artisans.&quot;,&quot;slug&quot;:&quot;laravel&quot;}],&quot;replacement&quot;:null,&quot;created_at&quot;:{&quot;human&quot;:&quot;2 years ago&quot;,&quot;datetime&quot;:&quot;2022-06-29 20:23:23&quot;,&quot;date&quot;:&quot;2022-06-29&quot;,&quot;formatted&quot;:&quot;June 29th, 2022&quot;},&quot;author&quot;:{&quot;id&quot;:6,&quot;name&quot;:&quot;Alex Garrett-Smith&quot;,&quot;avatar&quot;:&quot;https://codecourse-avatars.ams3.digitaloceanspaces.com/4GqnwYOVonIz6YVfLLVtWMRFH3dB7Dyx&quot;,&quot;bio&quot;:&quot;Hey, I&#39;m the founder of Codecourse!&quot;},&quot;user&quot;:{&quot;is_saved&quot;:null,&quot;in_progress&quot;:null,&quot;last_episode&quot;:null,&quot;played_seconds&quot;:null,&quot;remaining_seconds&quot;:3728,&quot;percentage_progress&quot;:0}},{&quot;id&quot;:501,&quot;title&quot;:&quot;Enums in Laravel&quot;,&quot;slug&quot;:&quot;enums-in-laravel&quot;,&quot;description&quot;:&quot;Enums make working with multiple potential column values a breeze (think order statuses). Let&#39;s use an Enum in Laravel and cover storing, validating and accessing Enums.\r\n\r\nBy the end of the course, you&#39;ll be able to implement Enums in Laravel with ease, and make sure your multiple choice column data is strict and easy to globally update across your entire application.&quot;,&quot;description_short&quot;:&quot;Enums make working with multiple potential column values a breeze (think order statuses). Let&#39;s use...&quot;,&quot;difficulty&quot;:&quot;beginner&quot;,&quot;github_repository&quot;:&quot;https://github.com/codecourse/enums-in-laravel&quot;,&quot;description_markdown&quot;:&quot;&lt;p&gt;Enums make working with multiple potential column values a breeze (think order statuses). Let&#39;s use an Enum in Laravel and cover storing, validating and accessing Enums.&lt;/p&gt;\n&lt;p&gt;By the end of the course, you&#39;ll be able to implement Enums in Laravel with ease, and make sure your multiple choice column data is strict and easy to globally update across your entire application.&lt;/p&gt;\n&quot;,&quot;free&quot;:false,&quot;ongoing&quot;:false,&quot;upcoming&quot;:false,&quot;type&quot;:&quot;course&quot;,&quot;type_title&quot;:&quot;Course&quot;,&quot;new&quot;:false,&quot;parts_count&quot;:9,&quot;has_new_parts&quot;:false,&quot;duration_seconds&quot;:1894,&quot;duration&quot;:{&quot;formatted&quot;:{&quot;hours&quot;:0,&quot;minutes&quot;:31,&quot;seconds&quot;:&quot;34&quot;}},&quot;url&quot;:&quot;https://codecourse.com/courses/enums-in-laravel&quot;,&quot;newsletter&quot;:false,&quot;topics&quot;:[{&quot;id&quot;:8,&quot;title&quot;:&quot;Laravel&quot;,&quot;description&quot;:&quot;The PHP framework for web artisans.&quot;,&quot;slug&quot;:&quot;laravel&quot;}],&quot;replacement&quot;:null,&quot;created_at&quot;:{&quot;human&quot;:&quot;2 years ago&quot;,&quot;datetime&quot;:&quot;2023-01-18 09:15:00&quot;,&quot;date&quot;:&quot;2023-01-18&quot;,&quot;formatted&quot;:&quot;January 18th, 2023&quot;},&quot;author&quot;:{&quot;id&quot;:6,&quot;name&quot;:&quot;Alex Garrett-Smith&quot;,&quot;avatar&quot;:&quot;https://codecourse-avatars.ams3.digitaloceanspaces.com/4GqnwYOVonIz6YVfLLVtWMRFH3dB7Dyx&quot;,&quot;bio&quot;:&quot;Hey, I&#39;m the founder of Codecourse!&quot;},&quot;user&quot;:{&quot;is_saved&quot;:null,&quot;in_progress&quot;:null,&quot;last_episode&quot;:null,&quot;played_seconds&quot;:null,&quot;remaining_seconds&quot;:1894,&quot;percentage_progress&quot;:0}},{&quot;id&quot;:509,&quot;title&quot;:&quot;Passwordless Authentication with Laravel&quot;,&quot;slug&quot;:&quot;passwordless-authentication-with-laravel-2023&quot;,&quot;description&quot;:&quot;Say goodbye to the traditional email/password flow and implement passwordless authentication with Laravel! In this course, we&#39;ll cover sending a secure link via email to allow users to sign in seamlessly. Oh, and we&#39;ll cover the entire registration process too.\r\n\r\nUse it on its own, or combine it with the standard email/password flow to give your users even more flexibility.&quot;,&quot;description_short&quot;:&quot;Say goodbye to the traditional email/password flow and implement passwordless authentication with Laravel! In this...&quot;,&quot;difficulty&quot;:&quot;intermediate&quot;,&quot;github_repository&quot;:&quot;https://github.com/codecourse/laravel-passwordless-authentication&quot;,&quot;description_markdown&quot;:&quot;&lt;p&gt;Say goodbye to the traditional email/password flow and implement passwordless authentication with Laravel! In this course, we&#39;ll cover sending a secure link via email to allow users to sign in seamlessly. Oh, and we&#39;ll cover the entire registration process too.&lt;/p&gt;\n&lt;p&gt;Use it on its own, or combine it with the standard email/password flow to give your users even more flexibility.&lt;/p&gt;\n&quot;,&quot;free&quot;:false,&quot;ongoing&quot;:false,&quot;upcoming&quot;:false,&quot;type&quot;:&quot;course&quot;,&quot;type_title&quot;:&quot;Course&quot;,&quot;new&quot;:false,&quot;parts_count&quot;:10,&quot;has_new_parts&quot;:false,&quot;duration_seconds&quot;:3518,&quot;duration&quot;:{&quot;formatted&quot;:{&quot;hours&quot;:0,&quot;minutes&quot;:58,&quot;seconds&quot;:&quot;38&quot;}},&quot;url&quot;:&quot;https://codecourse.com/courses/passwordless-authentication-with-laravel-2023&quot;,&quot;newsletter&quot;:false,&quot;topics&quot;:[{&quot;id&quot;:8,&quot;title&quot;:&quot;Laravel&quot;,&quot;description&quot;:&quot;The PHP framework for web artisans.&quot;,&quot;slug&quot;:&quot;laravel&quot;}],&quot;replacement&quot;:null,&quot;created_at&quot;:{&quot;human&quot;:&quot;1 year ago&quot;,&quot;datetime&quot;:&quot;2023-04-20 19:15:24&quot;,&quot;date&quot;:&quot;2023-04-20&quot;,&quot;formatted&quot;:&quot;April 20th, 2023&quot;},&quot;author&quot;:{&quot;id&quot;:6,&quot;name&quot;:&quot;Alex Garrett-Smith&quot;,&quot;avatar&quot;:&quot;https://codecourse-avatars.ams3.digitaloceanspaces.com/4GqnwYOVonIz6YVfLLVtWMRFH3dB7Dyx&quot;,&quot;bio&quot;:&quot;Hey, I&#39;m the founder of Codecourse!&quot;},&quot;user&quot;:{&quot;is_saved&quot;:null,&quot;in_progress&quot;:null,&quot;last_episode&quot;:null,&quot;played_seconds&quot;:null,&quot;remaining_seconds&quot;:3518,&quot;percentage_progress&quot;:0}},{&quot;id&quot;:525,&quot;title&quot;:&quot;Modals in Inertia&quot;,&quot;slug&quot;:&quot;modals-in-inertia&quot;,&quot;description&quot;:&quot;Effortlessly add modals to your Inertia applications with the momentum-modal package.\r\n\r\nIn this course, we’ll get modals set up, design a customisable modal container with transitions, then cover everything you need to know about working with modals in your Inertia applications.&quot;,&quot;description_short&quot;:&quot;Effortlessly add modals to your Inertia applications with the momentum-modal package. In this course, we’ll...&quot;,&quot;difficulty&quot;:&quot;intermediate&quot;,&quot;github_repository&quot;:&quot;https://github.com/codecourse/modals-in-inertia&quot;,&quot;description_markdown&quot;:&quot;&lt;p&gt;Effortlessly add modals to your Inertia applications with the momentum-modal package.&lt;/p&gt;\n&lt;p&gt;In this course, we’ll get modals set up, design a customisable modal container with transitions, then cover everything you need to know about working with modals in your Inertia applications.&lt;/p&gt;\n&quot;,&quot;free&quot;:false,&quot;ongoing&quot;:false,&quot;upcoming&quot;:false,&quot;type&quot;:&quot;course&quot;,&quot;type_title&quot;:&quot;Course&quot;,&quot;new&quot;:false,&quot;parts_count&quot;:10,&quot;has_new_parts&quot;:false,&quot;duration_seconds&quot;:2765,&quot;duration&quot;:{&quot;formatted&quot;:{&quot;hours&quot;:0,&quot;minutes&quot;:46,&quot;seconds&quot;:&quot;05&quot;}},&quot;url&quot;:&quot;https://codecourse.com/courses/modals-in-inertia&quot;,&quot;newsletter&quot;:false,&quot;topics&quot;:[{&quot;id&quot;:8,&quot;title&quot;:&quot;Laravel&quot;,&quot;description&quot;:&quot;The PHP framework for web artisans.&quot;,&quot;slug&quot;:&quot;laravel&quot;},{&quot;id&quot;:28,&quot;title&quot;:&quot;Inertia&quot;,&quot;description&quot;:&quot;Create fully client-side rendered, single-page apps without the complexity of modern SPAs.&quot;,&quot;slug&quot;:&quot;inertia&quot;}],&quot;replacement&quot;:null,&quot;created_at&quot;:{&quot;human&quot;:&quot;1 year ago&quot;,&quot;datetime&quot;:&quot;2023-11-03 19:15:02&quot;,&quot;date&quot;:&quot;2023-11-03&quot;,&quot;formatted&quot;:&quot;November 3rd, 2023&quot;},&quot;author&quot;:{&quot;id&quot;:6,&quot;name&quot;:&quot;Alex Garrett-Smith&quot;,&quot;avatar&quot;:&quot;https://codecourse-avatars.ams3.digitaloceanspaces.com/4GqnwYOVonIz6YVfLLVtWMRFH3dB7Dyx&quot;,&quot;bio&quot;:&quot;Hey, I&#39;m the founder of Codecourse!&quot;},&quot;user&quot;:{&quot;is_saved&quot;:null,&quot;in_progress&quot;:null,&quot;last_episode&quot;:null,&quot;played_seconds&quot;:null,&quot;remaining_seconds&quot;:2765,&quot;percentage_progress&quot;:0}},{&quot;id&quot;:517,&quot;title&quot;:&quot;Eloquent Relationships By Example&quot;,&quot;slug&quot;:&quot;eloquent-relationships-by-example&quot;,&quot;description&quot;:&quot;Eloquent is Laravel&#39;s ORM (Object Relational Mapper). In simple terms, it&#39;s how your models work with the database.\r\n\r\nThe good news? There&#39;s a bunch of powerful relationship types available. Our task is to learn when and where to use each one.\r\n\r\nIn this course, we&#39;ll cover each basic relationship type, how to access related models, and then insert, sync, update and delete related data. Oh, and we&#39;ll build a practical example for each relationship type, to really make it stick.&quot;,&quot;description_short&quot;:&quot;Eloquent is Laravel&#39;s ORM (Object Relational Mapper). In simple terms, it&#39;s how your models work...&quot;,&quot;difficulty&quot;:&quot;beginner&quot;,&quot;github_repository&quot;:&quot;https://github.com/codecourse/eloquent-relationships-by-example&quot;,&quot;description_markdown&quot;:&quot;&lt;p&gt;Eloquent is Laravel&#39;s ORM (Object Relational Mapper). In simple terms, it&#39;s how your models work with the database.&lt;/p&gt;\n&lt;p&gt;The good news? There&#39;s a bunch of powerful relationship types available. Our task is to learn when and where to use each one.&lt;/p&gt;\n&lt;p&gt;In this course, we&#39;ll cover each basic relationship type, how to access related models, and then insert, sync, update and delete related data. Oh, and we&#39;ll build a practical example for each relationship type, to really make it stick.&lt;/p&gt;\n&quot;,&quot;free&quot;:false,&quot;ongoing&quot;:false,&quot;upcoming&quot;:false,&quot;type&quot;:&quot;course&quot;,&quot;type_title&quot;:&quot;Course&quot;,&quot;new&quot;:false,&quot;parts_count&quot;:33,&quot;has_new_parts&quot;:false,&quot;duration_seconds&quot;:15533,&quot;duration&quot;:{&quot;formatted&quot;:{&quot;hours&quot;:4,&quot;minutes&quot;:18,&quot;seconds&quot;:&quot;53&quot;}},&quot;url&quot;:&quot;https://codecourse.com/courses/eloquent-relationships-by-example&quot;,&quot;newsletter&quot;:false,&quot;topics&quot;:[{&quot;id&quot;:8,&quot;title&quot;:&quot;Laravel&quot;,&quot;description&quot;:&quot;The PHP framework for web artisans.&quot;,&quot;slug&quot;:&quot;laravel&quot;}],&quot;replacement&quot;:null,&quot;created_at&quot;:{&quot;human&quot;:&quot;1 year ago&quot;,&quot;datetime&quot;:&quot;2023-07-18 19:17:46&quot;,&quot;date&quot;:&quot;2023-07-18&quot;,&quot;formatted&quot;:&quot;July 18th, 2023&quot;},&quot;author&quot;:{&quot;id&quot;:6,&quot;name&quot;:&quot;Alex Garrett-Smith&quot;,&quot;avatar&quot;:&quot;https://codecourse-avatars.ams3.digitaloceanspaces.com/4GqnwYOVonIz6YVfLLVtWMRFH3dB7Dyx&quot;,&quot;bio&quot;:&quot;Hey, I&#39;m the founder of Codecourse!&quot;},&quot;user&quot;:{&quot;is_saved&quot;:null,&quot;in_progress&quot;:null,&quot;last_episode&quot;:null,&quot;played_seconds&quot;:null,&quot;remaining_seconds&quot;:15533,&quot;percentage_progress&quot;:0}},{&quot;id&quot;:521,&quot;title&quot;:&quot;Build a URL Shortener with Volt and Folio&quot;,&quot;slug&quot;:&quot;build-a-url-shortener-with-volt-and-folio&quot;,&quot;description&quot;:&quot;Volt is a functional API for Livewire that allows you to build Livewire components in a single file, alongside Blade templates. Pairing this with automatic route creation using Laravel Folio gives us a serious productivity boost.\r\n\r\nSo, let’s build a URL shortener while learning how Volt and Folio work!&quot;,&quot;description_short&quot;:&quot;Volt is a functional API for Livewire that allows you to build Livewire components in...&quot;,&quot;difficulty&quot;:&quot;beginner&quot;,&quot;github_repository&quot;:&quot;https://github.com/codecourse/volt-url-shortener&quot;,&quot;description_markdown&quot;:&quot;&lt;p&gt;Volt is a functional API for Livewire that allows you to build Livewire components in a single file, alongside Blade templates. Pairing this with automatic route creation using Laravel Folio gives us a serious productivity boost.&lt;/p&gt;\n&lt;p&gt;So, let’s build a URL shortener while learning how Volt and Folio work!&lt;/p&gt;\n&quot;,&quot;free&quot;:false,&quot;ongoing&quot;:false,&quot;upcoming&quot;:false,&quot;type&quot;:&quot;course&quot;,&quot;type_title&quot;:&quot;Course&quot;,&quot;new&quot;:false,&quot;parts_count&quot;:10,&quot;has_new_parts&quot;:false,&quot;duration_seconds&quot;:3190,&quot;duration&quot;:{&quot;formatted&quot;:{&quot;hours&quot;:0,&quot;minutes&quot;:53,&quot;seconds&quot;:&quot;10&quot;}},&quot;url&quot;:&quot;https://codecourse.com/courses/build-a-url-shortener-with-volt-and-folio&quot;,&quot;newsletter&quot;:false,&quot;topics&quot;:[{&quot;id&quot;:8,&quot;title&quot;:&quot;Laravel&quot;,&quot;description&quot;:&quot;The PHP framework for web artisans.&quot;,&quot;slug&quot;:&quot;laravel&quot;},{&quot;id&quot;:26,&quot;title&quot;:&quot;Livewire&quot;,&quot;description&quot;:&quot;A full-stack framework for Laravel that makes building dynamic interfaces simple.&quot;,&quot;slug&quot;:&quot;laravel-livewire&quot;}],&quot;replacement&quot;:null,&quot;created_at&quot;:{&quot;human&quot;:&quot;1 year ago&quot;,&quot;datetime&quot;:&quot;2023-10-17 07:35:42&quot;,&quot;date&quot;:&quot;2023-10-17&quot;,&quot;formatted&quot;:&quot;October 17th, 2023&quot;},&quot;author&quot;:{&quot;id&quot;:6,&quot;name&quot;:&quot;Alex Garrett-Smith&quot;,&quot;avatar&quot;:&quot;https://codecourse-avatars.ams3.digitaloceanspaces.com/4GqnwYOVonIz6YVfLLVtWMRFH3dB7Dyx&quot;,&quot;bio&quot;:&quot;Hey, I&#39;m the founder of Codecourse!&quot;},&quot;user&quot;:{&quot;is_saved&quot;:null,&quot;in_progress&quot;:null,&quot;last_episode&quot;:null,&quot;played_seconds&quot;:null,&quot;remaining_seconds&quot;:3190,&quot;percentage_progress&quot;:0}},{&quot;id&quot;:530,&quot;title&quot;:&quot;Chunking Large Uploads in Livewire&quot;,&quot;slug&quot;:&quot;chunking-large-uploads-in-livewire&quot;,&quot;description&quot;:&quot;Effortlessly handle large file uploads in your Livewire apps with chunked, resumable uploading.\r\n\r\nWe’ll cover the entire upload process, display a progress bar, then add the ability to pause, resume and cancel uploads.\r\n\r\nFrom there, you’ll be able to handle huge file uploads anywhere in your applications.&quot;,&quot;description_short&quot;:&quot;Effortlessly handle large file uploads in your Livewire apps with chunked, resumable uploading. We’ll cover...&quot;,&quot;difficulty&quot;:&quot;intermediate&quot;,&quot;github_repository&quot;:&quot;https://github.com/codecourse/chunked-uploads-livewire&quot;,&quot;description_markdown&quot;:&quot;&lt;p&gt;Effortlessly handle large file uploads in your Livewire apps with chunked, resumable uploading.&lt;/p&gt;\n&lt;p&gt;We’ll cover the entire upload process, display a progress bar, then add the ability to pause, resume and cancel uploads.&lt;/p&gt;\n&lt;p&gt;From there, you’ll be able to handle huge file uploads anywhere in your applications.&lt;/p&gt;\n&quot;,&quot;free&quot;:false,&quot;ongoing&quot;:false,&quot;upcoming&quot;:false,&quot;type&quot;:&quot;course&quot;,&quot;type_title&quot;:&quot;Course&quot;,&quot;new&quot;:false,&quot;parts_count&quot;:13,&quot;has_new_parts&quot;:false,&quot;duration_seconds&quot;:3197,&quot;duration&quot;:{&quot;formatted&quot;:{&quot;hours&quot;:0,&quot;minutes&quot;:53,&quot;seconds&quot;:&quot;17&quot;}},&quot;url&quot;:&quot;https://codecourse.com/courses/chunking-large-uploads-in-livewire&quot;,&quot;newsletter&quot;:false,&quot;topics&quot;:[{&quot;id&quot;:26,&quot;title&quot;:&quot;Livewire&quot;,&quot;description&quot;:&quot;A full-stack framework for Laravel that makes building dynamic interfaces simple.&quot;,&quot;slug&quot;:&quot;laravel-livewire&quot;}],&quot;replacement&quot;:null,&quot;created_at&quot;:{&quot;human&quot;:&quot;1 year ago&quot;,&quot;datetime&quot;:&quot;2023-11-27 22:43:28&quot;,&quot;date&quot;:&quot;2023-11-27&quot;,&quot;formatted&quot;:&quot;November 27th, 2023&quot;},&quot;author&quot;:{&quot;id&quot;:6,&quot;name&quot;:&quot;Alex Garrett-Smith&quot;,&quot;avatar&quot;:&quot;https://codecourse-avatars.ams3.digitaloceanspaces.com/4GqnwYOVonIz6YVfLLVtWMRFH3dB7Dyx&quot;,&quot;bio&quot;:&quot;Hey, I&#39;m the founder of Codecourse!&quot;},&quot;user&quot;:{&quot;is_saved&quot;:null,&quot;in_progress&quot;:null,&quot;last_episode&quot;:null,&quot;played_seconds&quot;:null,&quot;remaining_seconds&quot;:3197,&quot;percentage_progress&quot;:0}},{&quot;id&quot;:533,&quot;title&quot;:&quot;Dropdown Autocomplete Search Anything in Laravel&quot;,&quot;slug&quot;:&quot;dropdown-autocomplete-search-anything-in-laravel&quot;,&quot;description&quot;:&quot;Using the power of Laravel Scout and Meilisearch, let’s build an instant dropdown search in your Laravel apps.\r\n\r\nWe’ll start with the basics of indexing data, then use the JavaScript autocomplete library to instantly show results as the user types — even multiple sources at the same time!&quot;,&quot;description_short&quot;:&quot;Using the power of Laravel Scout and Meilisearch, let’s build an instant dropdown search in...&quot;,&quot;difficulty&quot;:&quot;beginner&quot;,&quot;github_repository&quot;:&quot;https://github.com/codecourse/laravel-dropdown-search&quot;,&quot;description_markdown&quot;:&quot;&lt;p&gt;Using the power of Laravel Scout and Meilisearch, let’s build an instant dropdown search in your Laravel apps.&lt;/p&gt;\n&lt;p&gt;We’ll start with the basics of indexing data, then use the JavaScript autocomplete library to instantly show results as the user types — even multiple sources at the same time!&lt;/p&gt;\n&quot;,&quot;free&quot;:false,&quot;ongoing&quot;:false,&quot;upcoming&quot;:false,&quot;type&quot;:&quot;course&quot;,&quot;type_title&quot;:&quot;Course&quot;,&quot;new&quot;:false,&quot;parts_count&quot;:12,&quot;has_new_parts&quot;:false,&quot;duration_seconds&quot;:3804,&quot;duration&quot;:{&quot;formatted&quot;:{&quot;hours&quot;:1,&quot;minutes&quot;:3,&quot;seconds&quot;:&quot;24&quot;}},&quot;url&quot;:&quot;https://codecourse.com/courses/dropdown-autocomplete-search-anything-in-laravel&quot;,&quot;newsletter&quot;:false,&quot;topics&quot;:[{&quot;id&quot;:8,&quot;title&quot;:&quot;Laravel&quot;,&quot;description&quot;:&quot;The PHP framework for web artisans.&quot;,&quot;slug&quot;:&quot;laravel&quot;}],&quot;replacement&quot;:null,&quot;created_at&quot;:{&quot;human&quot;:&quot;1 year ago&quot;,&quot;datetime&quot;:&quot;2023-12-14 08:38:51&quot;,&quot;date&quot;:&quot;2023-12-14&quot;,&quot;formatted&quot;:&quot;December 14th, 2023&quot;},&quot;author&quot;:{&quot;id&quot;:6,&quot;name&quot;:&quot;Alex Garrett-Smith&quot;,&quot;avatar&quot;:&quot;https://codecourse-avatars.ams3.digitaloceanspaces.com/4GqnwYOVonIz6YVfLLVtWMRFH3dB7Dyx&quot;,&quot;bio&quot;:&quot;Hey, I&#39;m the founder of Codecourse!&quot;},&quot;user&quot;:{&quot;is_saved&quot;:null,&quot;in_progress&quot;:null,&quot;last_episode&quot;:null,&quot;played_seconds&quot;:null,&quot;remaining_seconds&quot;:3804,&quot;percentage_progress&quot;:0}},{&quot;id&quot;:535,&quot;title&quot;:&quot;Build a Referral System with Laravel&quot;,&quot;slug&quot;:&quot;build-a-laravel-referral-system&quot;,&quot;description&quot;:&quot;Let&#39;s build a feature complete Laravel referral system, completely from scratch.\r\n\r\nWe’ll cover generating referral codes, setting a cookie to track the referral process, hooking up referrals to subscriptions and displaying detailed referral stats in a dashboard, so your users can see how they&#39;re doing.\r\n\r\nOn the admin side, we&#39;ll set up a job to automatically generate a CSV with all the amounts you need to pay out each month, automatically mark referrals as paid, and display historical referral payments for users.&quot;,&quot;description_short&quot;:&quot;Let&#39;s build a feature complete Laravel referral system, completely from scratch. We’ll cover generating referral...&quot;,&quot;difficulty&quot;:&quot;advanced&quot;,&quot;github_repository&quot;:&quot;https://github.com/codecourse/build-a-laravel-referral-system&quot;,&quot;description_markdown&quot;:&quot;&lt;p&gt;Let&#39;s build a feature complete Laravel referral system, completely from scratch.&lt;/p&gt;\n&lt;p&gt;We’ll cover generating referral codes, setting a cookie to track the referral process, hooking up referrals to subscriptions and displaying detailed referral stats in a dashboard, so your users can see how they&#39;re doing.&lt;/p&gt;\n&lt;p&gt;On the admin side, we&#39;ll set up a job to automatically generate a CSV with all the amounts you need to pay out each month, automatically mark referrals as paid, and display historical referral payments for users.&lt;/p&gt;\n&quot;,&quot;free&quot;:false,&quot;ongoing&quot;:false,&quot;upcoming&quot;:false,&quot;type&quot;:&quot;course&quot;,&quot;type_title&quot;:&quot;Course&quot;,&quot;new&quot;:false,&quot;parts_count&quot;:24,&quot;has_new_parts&quot;:false,&quot;duration_seconds&quot;:9599,&quot;duration&quot;:{&quot;formatted&quot;:{&quot;hours&quot;:2,&quot;minutes&quot;:39,&quot;seconds&quot;:&quot;59&quot;}},&quot;url&quot;:&quot;https://codecourse.com/courses/build-a-laravel-referral-system&quot;,&quot;newsletter&quot;:false,&quot;topics&quot;:[{&quot;id&quot;:8,&quot;title&quot;:&quot;Laravel&quot;,&quot;description&quot;:&quot;The PHP framework for web artisans.&quot;,&quot;slug&quot;:&quot;laravel&quot;}],&quot;replacement&quot;:null,&quot;created_at&quot;:{&quot;human&quot;:&quot;1 year ago&quot;,&quot;datetime&quot;:&quot;2024-01-11 22:47:41&quot;,&quot;date&quot;:&quot;2024-01-11&quot;,&quot;formatted&quot;:&quot;January 11th, 2024&quot;},&quot;author&quot;:{&quot;id&quot;:6,&quot;name&quot;:&quot;Alex Garrett-Smith&quot;,&quot;avatar&quot;:&quot;https://codecourse-avatars.ams3.digitaloceanspaces.com/4GqnwYOVonIz6YVfLLVtWMRFH3dB7Dyx&quot;,&quot;bio&quot;:&quot;Hey, I&#39;m the founder of Codecourse!&quot;},&quot;user&quot;:{&quot;is_saved&quot;:null,&quot;in_progress&quot;:null,&quot;last_episode&quot;:null,&quot;played_seconds&quot;:null,&quot;remaining_seconds&quot;:9599,&quot;percentage_progress&quot;:0}},{&quot;id&quot;:538,&quot;title&quot;:&quot;Crop and Upload Profile Photos with Livewire&quot;,&quot;slug&quot;:&quot;crop-and-upload-profile-photos-with-livewire&quot;,&quot;description&quot;:&quot;Using Livewire, Alpine and Cropper.js (or any cropping library), we’ll create an embeddable form field for users (or any other model) to upload profile photos.\r\n\r\nThe form element will launch a modal, where users can crop and adjust their profile photo, before being able to preview and save the cropped image — or clear everything out and start again.\r\n\r\nYou’ll learn:\r\n- How to launch modals in Livewire\r\n- How to use Cropper.js with Alpine\r\n- How to resize images on the backend with the spatie/image package\r\n- How to pass data between Livewire components&quot;,&quot;description_short&quot;:&quot;Using Livewire, Alpine and Cropper.js (or any cropping library), we’ll create an embeddable form field...&quot;,&quot;difficulty&quot;:&quot;intermediate&quot;,&quot;github_repository&quot;:&quot;https://github.com/codecourse/crop-and-upload-profile-photos-with-livewire&quot;,&quot;description_markdown&quot;:&quot;&lt;p&gt;Using Livewire, Alpine and Cropper.js (or any cropping library), we’ll create an embeddable form field for users (or any other model) to upload profile photos.&lt;/p&gt;\n&lt;p&gt;The form element will launch a modal, where users can crop and adjust their profile photo, before being able to preview and save the cropped image — or clear everything out and start again.&lt;/p&gt;\n&lt;p&gt;You’ll learn:&lt;/p&gt;\n&lt;ul&gt;\n&lt;li&gt;How to launch modals in Livewire&lt;/li&gt;\n&lt;li&gt;How to use Cropper.js with Alpine&lt;/li&gt;\n&lt;li&gt;How to resize images on the backend with the spatie/image package&lt;/li&gt;\n&lt;li&gt;How to pass data between Livewire components&lt;/li&gt;\n&lt;/ul&gt;\n&quot;,&quot;free&quot;:false,&quot;ongoing&quot;:false,&quot;upcoming&quot;:false,&quot;type&quot;:&quot;course&quot;,&quot;type_title&quot;:&quot;Course&quot;,&quot;new&quot;:false,&quot;parts_count&quot;:10,&quot;has_new_parts&quot;:false,&quot;duration_seconds&quot;:2639,&quot;duration&quot;:{&quot;formatted&quot;:{&quot;hours&quot;:0,&quot;minutes&quot;:43,&quot;seconds&quot;:&quot;59&quot;}},&quot;url&quot;:&quot;https://codecourse.com/courses/crop-and-upload-profile-photos-with-livewire&quot;,&quot;newsletter&quot;:false,&quot;topics&quot;:[{&quot;id&quot;:26,&quot;title&quot;:&quot;Livewire&quot;,&quot;description&quot;:&quot;A full-stack framework for Laravel that makes building dynamic interfaces simple.&quot;,&quot;slug&quot;:&quot;laravel-livewire&quot;}],&quot;replacement&quot;:null,&quot;created_at&quot;:{&quot;human&quot;:&quot;1 year ago&quot;,&quot;datetime&quot;:&quot;2024-02-08 10:27:27&quot;,&quot;date&quot;:&quot;2024-02-08&quot;,&quot;formatted&quot;:&quot;February 8th, 2024&quot;},&quot;author&quot;:{&quot;id&quot;:6,&quot;name&quot;:&quot;Alex Garrett-Smith&quot;,&quot;avatar&quot;:&quot;https://codecourse-avatars.ams3.digitaloceanspaces.com/4GqnwYOVonIz6YVfLLVtWMRFH3dB7Dyx&quot;,&quot;bio&quot;:&quot;Hey, I&#39;m the founder of Codecourse!&quot;},&quot;user&quot;:{&quot;is_saved&quot;:null,&quot;in_progress&quot;:null,&quot;last_episode&quot;:null,&quot;played_seconds&quot;:null,&quot;remaining_seconds&quot;:2639,&quot;percentage_progress&quot;:0}}],&quot;trending&quot;:[{&quot;id&quot;:550,&quot;title&quot;:&quot;Build Your Own PHP Framework&quot;,&quot;slug&quot;:&quot;build-a-php-framework&quot;,&quot;description&quot;:&quot;Starting completely from scratch, build a modern PHP framework with all the features you’d expect.\r\n\r\nWhether you’re new to PHP or not, this is a great exercise for learning what happens under the hood, arming you with knowledge you can apply anywhere you use PHP.\r\n\r\nWe’ll cover routing, controllers, views, the container, accessing the database, models, authentication, config, CSRF protection, exception handling, pagination, validation, flashing messages and much more.\r\n\r\nLet’s dive in and build a PHP framework, step-by-step!&quot;,&quot;description_short&quot;:&quot;Starting completely from scratch, build a modern PHP framework with all the features you’d expect....&quot;,&quot;difficulty&quot;:&quot;intermediate&quot;,&quot;github_repository&quot;:&quot;https://github.com/codecourse/build-your-own-php-framework&quot;,&quot;description_markdown&quot;:&quot;&lt;p&gt;Starting completely from scratch, build a modern PHP framework with all the features you’d expect.&lt;/p&gt;\n&lt;p&gt;Whether you’re new to PHP or not, this is a great exercise for learning what happens under the hood, arming you with knowledge you can apply anywhere you use PHP.&lt;/p&gt;\n&lt;p&gt;We’ll cover routing, controllers, views, the container, accessing the database, models, authentication, config, CSRF protection, exception handling, pagination, validation, flashing messages and much more.&lt;/p&gt;\n&lt;p&gt;Let’s dive in and build a PHP framework, step-by-step!&lt;/p&gt;\n&quot;,&quot;free&quot;:false,&quot;ongoing&quot;:false,&quot;upcoming&quot;:false,&quot;type&quot;:&quot;course&quot;,&quot;type_title&quot;:&quot;Course&quot;,&quot;new&quot;:false,&quot;parts_count&quot;:54,&quot;has_new_parts&quot;:false,&quot;duration_seconds&quot;:17115,&quot;duration&quot;:{&quot;formatted&quot;:{&quot;hours&quot;:4,&quot;minutes&quot;:45,&quot;seconds&quot;:&quot;15&quot;}},&quot;url&quot;:&quot;https://codecourse.com/courses/build-a-php-framework&quot;,&quot;newsletter&quot;:true,&quot;topics&quot;:[{&quot;id&quot;:1,&quot;title&quot;:&quot;PHP&quot;,&quot;description&quot;:&quot;The most popular server side scripting language for the web.&quot;,&quot;slug&quot;:&quot;php&quot;}],&quot;replacement&quot;:null,&quot;created_at&quot;:{&quot;human&quot;:&quot;8 months ago&quot;,&quot;datetime&quot;:&quot;2024-06-11 13:02:32&quot;,&quot;date&quot;:&quot;2024-06-11&quot;,&quot;formatted&quot;:&quot;June 11th, 2024&quot;},&quot;author&quot;:{&quot;id&quot;:6,&quot;name&quot;:&quot;Alex Garrett-Smith&quot;,&quot;avatar&quot;:&quot;https://codecourse-avatars.ams3.digitaloceanspaces.com/4GqnwYOVonIz6YVfLLVtWMRFH3dB7Dyx&quot;,&quot;bio&quot;:&quot;Hey, I&#39;m the founder of Codecourse!&quot;},&quot;user&quot;:{&quot;is_saved&quot;:null,&quot;in_progress&quot;:null,&quot;last_episode&quot;:null,&quot;played_seconds&quot;:null,&quot;remaining_seconds&quot;:17115,&quot;percentage_progress&quot;:0}},{&quot;id&quot;:569,&quot;title&quot;:&quot;Laravel Mentions&quot;,&quot;slug&quot;:&quot;laravel-mentions&quot;,&quot;description&quot;:&quot;Add mentionable functionality to your Laravel applications and mention users, projects, issues… literally anything.\r\n\r\nWe’ll start by setting up a simple comment system with Livewire, then detect, sync, notify and test mentions step-by-step. Not using Livewire? Don’t worry, the core functionality works with any stack.\r\n\r\nIf you are using Alpine/Livewire, we’ll add mention support to textareas to get a list of users we’re able to mention when we hit a trigger key.&quot;,&quot;description_short&quot;:&quot;Add mentionable functionality to your Laravel applications and mention users, projects, issues… literally anything. We’ll...&quot;,&quot;difficulty&quot;:&quot;intermediate&quot;,&quot;github_repository&quot;:&quot;https://github.com/codecourse/laravel-mentions&quot;,&quot;description_markdown&quot;:&quot;&lt;p&gt;Add mentionable functionality to your Laravel applications and mention users, projects, issues… literally anything.&lt;/p&gt;\n&lt;p&gt;We’ll start by setting up a simple comment system with Livewire, then detect, sync, notify and test mentions step-by-step. Not using Livewire? Don’t worry, the core functionality works with any stack.&lt;/p&gt;\n&lt;p&gt;If you are using Alpine/Livewire, we’ll add mention support to textareas to get a list of users we’re able to mention when we hit a trigger key.&lt;/p&gt;\n&quot;,&quot;free&quot;:false,&quot;ongoing&quot;:false,&quot;upcoming&quot;:false,&quot;type&quot;:&quot;course&quot;,&quot;type_title&quot;:&quot;Course&quot;,&quot;new&quot;:false,&quot;parts_count&quot;:14,&quot;has_new_parts&quot;:true,&quot;duration_seconds&quot;:6397,&quot;duration&quot;:{&quot;formatted&quot;:{&quot;hours&quot;:1,&quot;minutes&quot;:46,&quot;seconds&quot;:&quot;37&quot;}},&quot;url&quot;:&quot;https://codecourse.com/courses/laravel-mentions&quot;,&quot;newsletter&quot;:false,&quot;topics&quot;:[{&quot;id&quot;:8,&quot;title&quot;:&quot;Laravel&quot;,&quot;description&quot;:&quot;The PHP framework for web artisans.&quot;,&quot;slug&quot;:&quot;laravel&quot;}],&quot;replacement&quot;:null,&quot;created_at&quot;:{&quot;human&quot;:&quot;1 week ago&quot;,&quot;datetime&quot;:&quot;2025-02-06 14:03:08&quot;,&quot;date&quot;:&quot;2025-02-06&quot;,&quot;formatted&quot;:&quot;February 6th, 2025&quot;},&quot;author&quot;:{&quot;id&quot;:6,&quot;name&quot;:&quot;Alex Garrett-Smith&quot;,&quot;avatar&quot;:&quot;https://codecourse-avatars.ams3.digitaloceanspaces.com/4GqnwYOVonIz6YVfLLVtWMRFH3dB7Dyx&quot;,&quot;bio&quot;:&quot;Hey, I&#39;m the founder of Codecourse!&quot;},&quot;user&quot;:{&quot;is_saved&quot;:null,&quot;in_progress&quot;:null,&quot;last_episode&quot;:null,&quot;played_seconds&quot;:null,&quot;remaining_seconds&quot;:6397,&quot;percentage_progress&quot;:0}},{&quot;id&quot;:565,&quot;title&quot;:&quot;Laravel Teams&quot;,&quot;slug&quot;:&quot;laravel-teams&quot;,&quot;description&quot;:&quot;Need team functionality in your Laravel application? Let’s build it from scratch.\r\n\r\nWe’ll cover the basics of creating teams, switching between them, sending secure team invites by email, and managing team members.\r\n\r\nPowering everything will be roles and permissions for each member, with the ability to switch roles directly from your team dashboard.\r\n\r\nOnce you’re done, you’ll have mastered team functionality in Laravel.&quot;,&quot;description_short&quot;:&quot;Need team functionality in your Laravel application? Let’s build it from scratch. We’ll cover the...&quot;,&quot;difficulty&quot;:&quot;intermediate&quot;,&quot;github_repository&quot;:&quot;https://github.com/codecourse/laravel-teams&quot;,&quot;description_markdown&quot;:&quot;&lt;p&gt;Need team functionality in your Laravel application? Let’s build it from scratch.&lt;/p&gt;\n&lt;p&gt;We’ll cover the basics of creating teams, switching between them, sending secure team invites by email, and managing team members.&lt;/p&gt;\n&lt;p&gt;Powering everything will be roles and permissions for each member, with the ability to switch roles directly from your team dashboard.&lt;/p&gt;\n&lt;p&gt;Once you’re done, you’ll have mastered team functionality in Laravel.&lt;/p&gt;\n&quot;,&quot;free&quot;:false,&quot;ongoing&quot;:false,&quot;upcoming&quot;:false,&quot;type&quot;:&quot;course&quot;,&quot;type_title&quot;:&quot;Course&quot;,&quot;new&quot;:false,&quot;parts_count&quot;:38,&quot;has_new_parts&quot;:false,&quot;duration_seconds&quot;:16567,&quot;duration&quot;:{&quot;formatted&quot;:{&quot;hours&quot;:4,&quot;minutes&quot;:36,&quot;seconds&quot;:&quot;07&quot;}},&quot;url&quot;:&quot;https://codecourse.com/courses/laravel-teams&quot;,&quot;newsletter&quot;:true,&quot;topics&quot;:[{&quot;id&quot;:8,&quot;title&quot;:&quot;Laravel&quot;,&quot;description&quot;:&quot;The PHP framework for web artisans.&quot;,&quot;slug&quot;:&quot;laravel&quot;}],&quot;replacement&quot;:null,&quot;created_at&quot;:{&quot;human&quot;:&quot;2 months ago&quot;,&quot;datetime&quot;:&quot;2024-11-28 09:00:36&quot;,&quot;date&quot;:&quot;2024-11-28&quot;,&quot;formatted&quot;:&quot;November 28th, 2024&quot;},&quot;author&quot;:{&quot;id&quot;:6,&quot;name&quot;:&quot;Alex Garrett-Smith&quot;,&quot;avatar&quot;:&quot;https://codecourse-avatars.ams3.digitaloceanspaces.com/4GqnwYOVonIz6YVfLLVtWMRFH3dB7Dyx&quot;,&quot;bio&quot;:&quot;Hey, I&#39;m the founder of Codecourse!&quot;},&quot;user&quot;:{&quot;is_saved&quot;:null,&quot;in_progress&quot;:null,&quot;last_episode&quot;:null,&quot;played_seconds&quot;:null,&quot;remaining_seconds&quot;:16567,&quot;percentage_progress&quot;:0}},{&quot;id&quot;:562,&quot;title&quot;:&quot;New in Laravel&quot;,&quot;slug&quot;:&quot;new-in-laravel&quot;,&quot;description&quot;:&quot;Need to know what’s new in Laravel as it happens? Every episode of this course is dedicated to covering the most interesting and useful Laravel additions in detail, so you’re ready to start using them in your applications.\r\n\r\nCheck back often, and stay completely up-to-date with Laravel.&quot;,&quot;description_short&quot;:&quot;Need to know what’s new in Laravel as it happens? Every episode of this course...&quot;,&quot;difficulty&quot;:&quot;intermediate&quot;,&quot;github_repository&quot;:&quot;https://github.com/codecourse/new-in-laravel&quot;,&quot;description_markdown&quot;:&quot;&lt;p&gt;Need to know what’s new in Laravel as it happens? Every episode of this course is dedicated to covering the most interesting and useful Laravel additions in detail, so you’re ready to start using them in your applications.&lt;/p&gt;\n&lt;p&gt;Check back often, and stay completely up-to-date with Laravel.&lt;/p&gt;\n&quot;,&quot;free&quot;:false,&quot;ongoing&quot;:false,&quot;upcoming&quot;:false,&quot;type&quot;:&quot;course&quot;,&quot;type_title&quot;:&quot;Course&quot;,&quot;new&quot;:false,&quot;parts_count&quot;:21,&quot;has_new_parts&quot;:false,&quot;duration_seconds&quot;:7827,&quot;duration&quot;:{&quot;formatted&quot;:{&quot;hours&quot;:2,&quot;minutes&quot;:10,&quot;seconds&quot;:&quot;27&quot;}},&quot;url&quot;:&quot;https://codecourse.com/courses/new-in-laravel&quot;,&quot;newsletter&quot;:true,&quot;topics&quot;:[{&quot;id&quot;:8,&quot;title&quot;:&quot;Laravel&quot;,&quot;description&quot;:&quot;The PHP framework for web artisans.&quot;,&quot;slug&quot;:&quot;laravel&quot;}],&quot;replacement&quot;:null,&quot;created_at&quot;:{&quot;human&quot;:&quot;4 months ago&quot;,&quot;datetime&quot;:&quot;2024-09-26 09:07:29&quot;,&quot;date&quot;:&quot;2024-09-26&quot;,&quot;formatted&quot;:&quot;September 26th, 2024&quot;},&quot;author&quot;:{&quot;id&quot;:6,&quot;name&quot;:&quot;Alex Garrett-Smith&quot;,&quot;avatar&quot;:&quot;https://codecourse-avatars.ams3.digitaloceanspaces.com/4GqnwYOVonIz6YVfLLVtWMRFH3dB7Dyx&quot;,&quot;bio&quot;:&quot;Hey, I&#39;m the founder of Codecourse!&quot;},&quot;user&quot;:{&quot;is_saved&quot;:null,&quot;in_progress&quot;:null,&quot;last_episode&quot;:null,&quot;played_seconds&quot;:null,&quot;remaining_seconds&quot;:7827,&quot;percentage_progress&quot;:0}},{&quot;id&quot;:549,&quot;title&quot;:&quot;Build a Trello Clone With Livewire&quot;,&quot;slug&quot;:&quot;build-a-trello-clone-with-livewire&quot;,&quot;description&quot;:&quot;Get ready to master drag and drop sorting in Livewire, by building a Trello clone.\r\n\r\nWe’ll start out by building the interface completely from scratch, then add the ability to sort columns and cards, including moving cards around columns. As we sort everything, we’ll keep the database perfectly updated with the new order.\r\n\r\nOur Trello clone will also allow us to edit column titles inline, edit cards and add notes, archive cards and columns, and put them back on the board.&quot;,&quot;description_short&quot;:&quot;Get ready to master drag and drop sorting in Livewire, by building a Trello clone....&quot;,&quot;difficulty&quot;:&quot;intermediate&quot;,&quot;github_repository&quot;:&quot;https://github.com/codecourse/livewire-trello-clone&quot;,&quot;description_markdown&quot;:&quot;&lt;p&gt;Get ready to master drag and drop sorting in Livewire, by building a Trello clone.&lt;/p&gt;\n&lt;p&gt;We’ll start out by building the interface completely from scratch, then add the ability to sort columns and cards, including moving cards around columns. As we sort everything, we’ll keep the database perfectly updated with the new order.&lt;/p&gt;\n&lt;p&gt;Our Trello clone will also allow us to edit column titles inline, edit cards and add notes, archive cards and columns, and put them back on the board.&lt;/p&gt;\n&quot;,&quot;free&quot;:false,&quot;ongoing&quot;:false,&quot;upcoming&quot;:false,&quot;type&quot;:&quot;course&quot;,&quot;type_title&quot;:&quot;Course&quot;,&quot;new&quot;:false,&quot;parts_count&quot;:31,&quot;has_new_parts&quot;:false,&quot;duration_seconds&quot;:8855,&quot;duration&quot;:{&quot;formatted&quot;:{&quot;hours&quot;:2,&quot;minutes&quot;:27,&quot;seconds&quot;:&quot;35&quot;}},&quot;url&quot;:&quot;https://codecourse.com/courses/build-a-trello-clone-with-livewire&quot;,&quot;newsletter&quot;:true,&quot;topics&quot;:[{&quot;id&quot;:26,&quot;title&quot;:&quot;Livewire&quot;,&quot;description&quot;:&quot;A full-stack framework for Laravel that makes building dynamic interfaces simple.&quot;,&quot;slug&quot;:&quot;laravel-livewire&quot;}],&quot;replacement&quot;:null,&quot;created_at&quot;:{&quot;human&quot;:&quot;8 months ago&quot;,&quot;datetime&quot;:&quot;2024-05-22 19:54:29&quot;,&quot;date&quot;:&quot;2024-05-22&quot;,&quot;formatted&quot;:&quot;May 22nd, 2024&quot;},&quot;author&quot;:{&quot;id&quot;:6,&quot;name&quot;:&quot;Alex Garrett-Smith&quot;,&quot;avatar&quot;:&quot;https://codecourse-avatars.ams3.digitaloceanspaces.com/4GqnwYOVonIz6YVfLLVtWMRFH3dB7Dyx&quot;,&quot;bio&quot;:&quot;Hey, I&#39;m the founder of Codecourse!&quot;},&quot;user&quot;:{&quot;is_saved&quot;:null,&quot;in_progress&quot;:null,&quot;last_episode&quot;:null,&quot;played_seconds&quot;:null,&quot;remaining_seconds&quot;:8855,&quot;percentage_progress&quot;:0}},{&quot;id&quot;:568,&quot;title&quot;:&quot;Building a Notification Preference System in Laravel&quot;,&quot;slug&quot;:&quot;building-a-notification-preference-system-in-laravel&quot;,&quot;description&quot;:&quot;Need to store advanced notification preferences in your application?\r\n\r\nIn this course, we cover displaying a matrix of notification groups, types and channels with the ability to sync preferences cleanly and quickly.\r\n\r\nOnce you’re done, your users will be able to choose what notifications they receive, and how.\r\n\r\nOh, and we’ll write tests to back everything up, look at how to use notification preferences in Notification classes, and how to set defaults for when users register.&quot;,&quot;description_short&quot;:&quot;Need to store advanced notification preferences in your application? In this course, we cover displaying...&quot;,&quot;difficulty&quot;:&quot;intermediate&quot;,&quot;github_repository&quot;:&quot;https://github.com/codecourse/building-a-notification-preference-system-in-laravel&quot;,&quot;description_markdown&quot;:&quot;&lt;p&gt;Need to store advanced notification preferences in your application?&lt;/p&gt;\n&lt;p&gt;In this course, we cover displaying a matrix of notification groups, types and channels with the ability to sync preferences cleanly and quickly.&lt;/p&gt;\n&lt;p&gt;Once you’re done, your users will be able to choose what notifications they receive, and how.&lt;/p&gt;\n&lt;p&gt;Oh, and we’ll write tests to back everything up, look at how to use notification preferences in Notification classes, and how to set defaults for when users register.&lt;/p&gt;\n&quot;,&quot;free&quot;:false,&quot;ongoing&quot;:false,&quot;upcoming&quot;:false,&quot;type&quot;:&quot;course&quot;,&quot;type_title&quot;:&quot;Course&quot;,&quot;new&quot;:false,&quot;parts_count&quot;:10,&quot;has_new_parts&quot;:false,&quot;duration_seconds&quot;:5031,&quot;duration&quot;:{&quot;formatted&quot;:{&quot;hours&quot;:1,&quot;minutes&quot;:23,&quot;seconds&quot;:&quot;51&quot;}},&quot;url&quot;:&quot;https://codecourse.com/courses/building-a-notification-preference-system-in-laravel&quot;,&quot;newsletter&quot;:false,&quot;topics&quot;:[{&quot;id&quot;:8,&quot;title&quot;:&quot;Laravel&quot;,&quot;description&quot;:&quot;The PHP framework for web artisans.&quot;,&quot;slug&quot;:&quot;laravel&quot;}],&quot;replacement&quot;:null,&quot;created_at&quot;:{&quot;human&quot;:&quot;2 weeks ago&quot;,&quot;datetime&quot;:&quot;2025-01-29 19:02:24&quot;,&quot;date&quot;:&quot;2025-01-29&quot;,&quot;formatted&quot;:&quot;January 29th, 2025&quot;},&quot;author&quot;:{&quot;id&quot;:6,&quot;name&quot;:&quot;Alex Garrett-Smith&quot;,&quot;avatar&quot;:&quot;https://codecourse-avatars.ams3.digitaloceanspaces.com/4GqnwYOVonIz6YVfLLVtWMRFH3dB7Dyx&quot;,&quot;bio&quot;:&quot;Hey, I&#39;m the founder of Codecourse!&quot;},&quot;user&quot;:{&quot;is_saved&quot;:null,&quot;in_progress&quot;:null,&quot;last_episode&quot;:null,&quot;played_seconds&quot;:null,&quot;remaining_seconds&quot;:5031,&quot;percentage_progress&quot;:0}},{&quot;id&quot;:552,&quot;title&quot;:&quot;Realtime with Laravel Reverb&quot;,&quot;slug&quot;:&quot;realtime-with-laravel-reverb&quot;,&quot;description&quot;:&quot;New to realtime broadcasting in Laravel? This course covers the essentials with plenty of examples along the way, leaving you ready to start adding realtime functionality to any of your Laravel applications.\r\n\r\nBroken up into channel types, we’ll cover:\r\n\r\n- The basics of installing, configuring and running a Reverb server\r\n- Broadcasting events\r\n- Private channels\r\n- Presence channels\r\n- Client-to-client broadcasting by whispering&quot;,&quot;description_short&quot;:&quot;New to realtime broadcasting in Laravel? This course covers the essentials with plenty of examples...&quot;,&quot;difficulty&quot;:&quot;beginner&quot;,&quot;github_repository&quot;:&quot;https://github.com/codecourse/realtime-with-laravel-reverb&quot;,&quot;description_markdown&quot;:&quot;&lt;p&gt;New to realtime broadcasting in Laravel? This course covers the essentials with plenty of examples along the way, leaving you ready to start adding realtime functionality to any of your Laravel applications.&lt;/p&gt;\n&lt;p&gt;Broken up into channel types, we’ll cover:&lt;/p&gt;\n&lt;ul&gt;\n&lt;li&gt;The basics of installing, configuring and running a Reverb server&lt;/li&gt;\n&lt;li&gt;Broadcasting events&lt;/li&gt;\n&lt;li&gt;Private channels&lt;/li&gt;\n&lt;li&gt;Presence channels&lt;/li&gt;\n&lt;li&gt;Client-to-client broadcasting by whispering&lt;/li&gt;\n&lt;/ul&gt;\n&quot;,&quot;free&quot;:true,&quot;ongoing&quot;:false,&quot;upcoming&quot;:false,&quot;type&quot;:&quot;course&quot;,&quot;type_title&quot;:&quot;Course&quot;,&quot;new&quot;:false,&quot;parts_count&quot;:18,&quot;has_new_parts&quot;:false,&quot;duration_seconds&quot;:4776,&quot;duration&quot;:{&quot;formatted&quot;:{&quot;hours&quot;:1,&quot;minutes&quot;:19,&quot;seconds&quot;:&quot;36&quot;}},&quot;url&quot;:&quot;https://codecourse.com/courses/realtime-with-laravel-reverb&quot;,&quot;newsletter&quot;:true,&quot;topics&quot;:[{&quot;id&quot;:8,&quot;title&quot;:&quot;Laravel&quot;,&quot;description&quot;:&quot;The PHP framework for web artisans.&quot;,&quot;slug&quot;:&quot;laravel&quot;}],&quot;replacement&quot;:null,&quot;created_at&quot;:{&quot;human&quot;:&quot;7 months ago&quot;,&quot;datetime&quot;:&quot;2024-07-02 14:34:57&quot;,&quot;date&quot;:&quot;2024-07-02&quot;,&quot;formatted&quot;:&quot;July 2nd, 2024&quot;},&quot;author&quot;:{&quot;id&quot;:6,&quot;name&quot;:&quot;Alex Garrett-Smith&quot;,&quot;avatar&quot;:&quot;https://codecourse-avatars.ams3.digitaloceanspaces.com/4GqnwYOVonIz6YVfLLVtWMRFH3dB7Dyx&quot;,&quot;bio&quot;:&quot;Hey, I&#39;m the founder of Codecourse!&quot;},&quot;user&quot;:{&quot;is_saved&quot;:null,&quot;in_progress&quot;:null,&quot;last_episode&quot;:null,&quot;played_seconds&quot;:null,&quot;remaining_seconds&quot;:4776,&quot;percentage_progress&quot;:0}},{&quot;id&quot;:542,&quot;title&quot;:&quot;Build an Appointment Booking System With Livewire&quot;,&quot;slug&quot;:&quot;build-an-appointment-booking-system-with-livewire&quot;,&quot;description&quot;:&quot;Building an availability calendar and booking system is a notoriously difficult problem to solve. That’s exactly what we’re going to cover in this course.\r\n\r\nStep by step, we’ll build an appointment slot generator that calculates availability based on employee schedules, employee’s booked time off, the length of service chosen, existing appointments, and cancelled appointments.\r\n\r\nFor maximum flexibility, we’ll also allow multi-employee availability checks, so we’ll be able to see every employee who can perform a service (and their available slots).\r\n\r\nTo finish up, we’ll create an entire booking flow with Livewire, including a beautiful booking calendar that shows detailed availability across multiple dates, the ability to choose a time slot — and finally the ability to book an appointment.\r\n\r\nPhew. We’ve got a lot to learn — let’s build a booking system with Livewire!&quot;,&quot;description_short&quot;:&quot;Building an availability calendar and booking system is a notoriously difficult problem to solve. That’s...&quot;,&quot;difficulty&quot;:&quot;advanced&quot;,&quot;github_repository&quot;:&quot;https://github.com/codecourse/laravel-booking-system-livewire&quot;,&quot;description_markdown&quot;:&quot;&lt;p&gt;Building an availability calendar and booking system is a notoriously difficult problem to solve. That’s exactly what we’re going to cover in this course.&lt;/p&gt;\n&lt;p&gt;Step by step, we’ll build an appointment slot generator that calculates availability based on employee schedules, employee’s booked time off, the length of service chosen, existing appointments, and cancelled appointments.&lt;/p&gt;\n&lt;p&gt;For maximum flexibility, we’ll also allow multi-employee availability checks, so we’ll be able to see every employee who can perform a service (and their available slots).&lt;/p&gt;\n&lt;p&gt;To finish up, we’ll create an entire booking flow with Livewire, including a beautiful booking calendar that shows detailed availability across multiple dates, the ability to choose a time slot — and finally the ability to book an appointment.&lt;/p&gt;\n&lt;p&gt;Phew. We’ve got a lot to learn — let’s build a booking system with Livewire!&lt;/p&gt;\n&quot;,&quot;free&quot;:false,&quot;ongoing&quot;:false,&quot;upcoming&quot;:false,&quot;type&quot;:&quot;course&quot;,&quot;type_title&quot;:&quot;Course&quot;,&quot;new&quot;:false,&quot;parts_count&quot;:36,&quot;has_new_parts&quot;:false,&quot;duration_seconds&quot;:11043,&quot;duration&quot;:{&quot;formatted&quot;:{&quot;hours&quot;:3,&quot;minutes&quot;:4,&quot;seconds&quot;:&quot;03&quot;}},&quot;url&quot;:&quot;https://codecourse.com/courses/build-an-appointment-booking-system-with-livewire&quot;,&quot;newsletter&quot;:false,&quot;topics&quot;:[{&quot;id&quot;:26,&quot;title&quot;:&quot;Livewire&quot;,&quot;description&quot;:&quot;A full-stack framework for Laravel that makes building dynamic interfaces simple.&quot;,&quot;slug&quot;:&quot;laravel-livewire&quot;}],&quot;replacement&quot;:null,&quot;created_at&quot;:{&quot;human&quot;:&quot;9 months ago&quot;,&quot;datetime&quot;:&quot;2024-04-25 10:00:50&quot;,&quot;date&quot;:&quot;2024-04-25&quot;,&quot;formatted&quot;:&quot;April 25th, 2024&quot;},&quot;author&quot;:{&quot;id&quot;:6,&quot;name&quot;:&quot;Alex Garrett-Smith&quot;,&quot;avatar&quot;:&quot;https://codecourse-avatars.ams3.digitaloceanspaces.com/4GqnwYOVonIz6YVfLLVtWMRFH3dB7Dyx&quot;,&quot;bio&quot;:&quot;Hey, I&#39;m the founder of Codecourse!&quot;},&quot;user&quot;:{&quot;is_saved&quot;:null,&quot;in_progress&quot;:null,&quot;last_episode&quot;:null,&quot;played_seconds&quot;:null,&quot;remaining_seconds&quot;:11043,&quot;percentage_progress&quot;:0}},{&quot;id&quot;:555,&quot;title&quot;:&quot;Deploying Reverb with Forge&quot;,&quot;slug&quot;:&quot;deploying-reverb-with-forge&quot;,&quot;description&quot;:&quot;So you’ve built a realtime application. Now it’s time to deploy it.\r\n\r\nLaravel Forge makes it incredibly easy to toggle Reverb, which configures your server for you and sets up (nearly) everything you need to broadcast and listen for events.\r\n\r\nIn this course, we’ll cover every step needed to get an local example application deployed to a production server, with a separate subdomain reserved for your Reverb connections.&quot;,&quot;description_short&quot;:&quot;So you’ve built a realtime application. Now it’s time to deploy it. Laravel Forge makes...&quot;,&quot;difficulty&quot;:&quot;beginner&quot;,&quot;github_repository&quot;:&quot;https://github.com/codecourse/deploying-reverb-with-forge&quot;,&quot;description_markdown&quot;:&quot;&lt;p&gt;So you’ve built a realtime application. Now it’s time to deploy it.&lt;/p&gt;\n&lt;p&gt;Laravel Forge makes it incredibly easy to toggle Reverb, which configures your server for you and sets up (nearly) everything you need to broadcast and listen for events.&lt;/p&gt;\n&lt;p&gt;In this course, we’ll cover every step needed to get an local example application deployed to a production server, with a separate subdomain reserved for your Reverb connections.&lt;/p&gt;\n&quot;,&quot;free&quot;:true,&quot;ongoing&quot;:false,&quot;upcoming&quot;:false,&quot;type&quot;:&quot;course&quot;,&quot;type_title&quot;:&quot;Course&quot;,&quot;new&quot;:false,&quot;parts_count&quot;:7,&quot;has_new_parts&quot;:false,&quot;duration_seconds&quot;:960,&quot;duration&quot;:{&quot;formatted&quot;:{&quot;hours&quot;:0,&quot;minutes&quot;:16,&quot;seconds&quot;:&quot;00&quot;}},&quot;url&quot;:&quot;https://codecourse.com/courses/deploying-reverb-with-forge&quot;,&quot;newsletter&quot;:false,&quot;topics&quot;:[{&quot;id&quot;:8,&quot;title&quot;:&quot;Laravel&quot;,&quot;description&quot;:&quot;The PHP framework for web artisans.&quot;,&quot;slug&quot;:&quot;laravel&quot;}],&quot;replacement&quot;:null,&quot;created_at&quot;:{&quot;human&quot;:&quot;7 months ago&quot;,&quot;datetime&quot;:&quot;2024-07-10 14:00:57&quot;,&quot;date&quot;:&quot;2024-07-10&quot;,&quot;formatted&quot;:&quot;July 10th, 2024&quot;},&quot;author&quot;:{&quot;id&quot;:6,&quot;name&quot;:&quot;Alex Garrett-Smith&quot;,&quot;avatar&quot;:&quot;https://codecourse-avatars.ams3.digitaloceanspaces.com/4GqnwYOVonIz6YVfLLVtWMRFH3dB7Dyx&quot;,&quot;bio&quot;:&quot;Hey, I&#39;m the founder of Codecourse!&quot;},&quot;user&quot;:{&quot;is_saved&quot;:null,&quot;in_progress&quot;:null,&quot;last_episode&quot;:null,&quot;played_seconds&quot;:null,&quot;remaining_seconds&quot;:960,&quot;percentage_progress&quot;:0}},{&quot;id&quot;:540,&quot;title&quot;:&quot;Build an Appointment Booking System With Inertia&quot;,&quot;slug&quot;:&quot;build-a-booking-system-with-inertia&quot;,&quot;description&quot;:&quot;Building an availability calendar and booking system is a notoriously difficult problem to solve. That’s exactly what we’re going to cover in this course.\r\n\r\nStep by step, we’ll build an appointment slot generator that calculates availability based on employee schedules, employee’s booked time off, the length of service chosen, existing appointments, and cancelled appointments.\r\n\r\nFor maximum flexibility, we’ll also allow multi-employee availability checks, so we’ll be able to see every employee who can perform a service (and their available slots).\r\n\r\nTo finish up, we’ll create an entire booking flow with Inertia (using Vue), including a beautiful booking calendar that shows detailed availability across multiple dates, the ability to choose a time slot — and finally the ability to book an appointment.\r\n\r\nPhew. We’ve got a lot to learn — let’s build a booking system with Inertia!&quot;,&quot;description_short&quot;:&quot;Building an availability calendar and booking system is a notoriously difficult problem to solve. That’s...&quot;,&quot;difficulty&quot;:&quot;advanced&quot;,&quot;github_repository&quot;:&quot;https://github.com/codecourse/laravel-booking-system-inertia&quot;,&quot;description_markdown&quot;:&quot;&lt;p&gt;Building an availability calendar and booking system is a notoriously difficult problem to solve. That’s exactly what we’re going to cover in this course.&lt;/p&gt;\n&lt;p&gt;Step by step, we’ll build an appointment slot generator that calculates availability based on employee schedules, employee’s booked time off, the length of service chosen, existing appointments, and cancelled appointments.&lt;/p&gt;\n&lt;p&gt;For maximum flexibility, we’ll also allow multi-employee availability checks, so we’ll be able to see every employee who can perform a service (and their available slots).&lt;/p&gt;\n&lt;p&gt;To finish up, we’ll create an entire booking flow with Inertia (using Vue), including a beautiful booking calendar that shows detailed availability across multiple dates, the ability to choose a time slot — and finally the ability to book an appointment.&lt;/p&gt;\n&lt;p&gt;Phew. We’ve got a lot to learn — let’s build a booking system with Inertia!&lt;/p&gt;\n&quot;,&quot;free&quot;:false,&quot;ongoing&quot;:false,&quot;upcoming&quot;:false,&quot;type&quot;:&quot;course&quot;,&quot;type_title&quot;:&quot;Course&quot;,&quot;new&quot;:false,&quot;parts_count&quot;:39,&quot;has_new_parts&quot;:false,&quot;duration_seconds&quot;:18032,&quot;duration&quot;:{&quot;formatted&quot;:{&quot;hours&quot;:5,&quot;minutes&quot;:0,&quot;seconds&quot;:&quot;32&quot;}},&quot;url&quot;:&quot;https://codecourse.com/courses/build-a-booking-system-with-inertia&quot;,&quot;newsletter&quot;:false,&quot;topics&quot;:[{&quot;id&quot;:28,&quot;title&quot;:&quot;Inertia&quot;,&quot;description&quot;:&quot;Create fully client-side rendered, single-page apps without the complexity of modern SPAs.&quot;,&quot;slug&quot;:&quot;inertia&quot;}],&quot;replacement&quot;:null,&quot;created_at&quot;:{&quot;human&quot;:&quot;11 months ago&quot;,&quot;datetime&quot;:&quot;2024-02-22 15:40:00&quot;,&quot;date&quot;:&quot;2024-02-22&quot;,&quot;formatted&quot;:&quot;February 22nd, 2024&quot;},&quot;author&quot;:{&quot;id&quot;:6,&quot;name&quot;:&quot;Alex Garrett-Smith&quot;,&quot;avatar&quot;:&quot;https://codecourse-avatars.ams3.digitaloceanspaces.com/4GqnwYOVonIz6YVfLLVtWMRFH3dB7Dyx&quot;,&quot;bio&quot;:&quot;Hey, I&#39;m the founder of Codecourse!&quot;},&quot;user&quot;:{&quot;is_saved&quot;:null,&quot;in_progress&quot;:null,&quot;last_episode&quot;:null,&quot;played_seconds&quot;:null,&quot;remaining_seconds&quot;:18032,&quot;percentage_progress&quot;:0}}],&quot;paths&quot;:[{&quot;id&quot;:2,&quot;title&quot;:&quot;Big Livewire Projects&quot;,&quot;slug&quot;:&quot;big-livewire-projects&quot;,&quot;description&quot;:&quot;A collection of our biggest, most up-to-date projects in Livewire.\r\n\r\nProgress through this path to learn tips, techniques and strategies you can apply to any project — and come through the other side having built up a collection of inspiring real-world applications.&quot;,&quot;topic&quot;:{&quot;id&quot;:26,&quot;title&quot;:&quot;Livewire&quot;,&quot;description&quot;:&quot;A full-stack framework for Laravel that makes building dynamic interfaces simple.&quot;,&quot;slug&quot;:&quot;laravel-livewire&quot;},&quot;description_markdown&quot;:&quot;&lt;p&gt;A collection of our biggest, most up-to-date projects in Livewire.&lt;/p&gt;\n&lt;p&gt;Progress through this path to learn tips, techniques and strategies you can apply to any project — and come through the other side having built up a collection of inspiring real-world applications.&lt;/p&gt;\n&quot;,&quot;duration_seconds&quot;:32126,&quot;courses_count&quot;:4,&quot;courses&quot;:[{&quot;id&quot;:547,&quot;title&quot;:&quot;Build a Livewire Comment System&quot;,&quot;slug&quot;:&quot;build-a-livewire-comment-system&quot;,&quot;description&quot;:&quot;Build a drop-in comment system with Livewire that instantly works for any model.\r\n\r\nWe’ll cover top-level comments and replies by re-using Livewire components, editing and deleting comments, working with Alpine.js to minimise network requests, building an Alpine.js directive to display when a comment was posted, handling deleted users and loading more comments gradually.\r\n\r\nOnce you’re done, you can drop a single Livewire comments component wherever you need it — and comments will instantly be enabled.&quot;,&quot;description_short&quot;:&quot;Build a drop-in comment system with Livewire that instantly works for any model. We’ll cover...&quot;,&quot;difficulty&quot;:&quot;beginner&quot;,&quot;github_repository&quot;:&quot;https://github.com/codecourse/livewire-comment-system&quot;,&quot;description_markdown&quot;:&quot;&lt;p&gt;Build a drop-in comment system with Livewire that instantly works for any model.&lt;/p&gt;\n&lt;p&gt;We’ll cover top-level comments and replies by re-using Livewire components, editing and deleting comments, working with Alpine.js to minimise network requests, building an Alpine.js directive to display when a comment was posted, handling deleted users and loading more comments gradually.&lt;/p&gt;\n&lt;p&gt;Once you’re done, you can drop a single Livewire comments component wherever you need it — and comments will instantly be enabled.&lt;/p&gt;\n&quot;,&quot;free&quot;:false,&quot;ongoing&quot;:false,&quot;upcoming&quot;:false,&quot;type&quot;:&quot;course&quot;,&quot;type_title&quot;:&quot;Course&quot;,&quot;new&quot;:false,&quot;parts_count&quot;:null,&quot;has_new_parts&quot;:false,&quot;duration_seconds&quot;:6041,&quot;duration&quot;:{&quot;formatted&quot;:{&quot;hours&quot;:1,&quot;minutes&quot;:40,&quot;seconds&quot;:&quot;41&quot;}},&quot;url&quot;:&quot;https://codecourse.com/courses/build-a-livewire-comment-system&quot;,&quot;newsletter&quot;:true,&quot;topics&quot;:[{&quot;id&quot;:26,&quot;title&quot;:&quot;Livewire&quot;,&quot;description&quot;:&quot;A full-stack framework for Laravel that makes building dynamic interfaces simple.&quot;,&quot;slug&quot;:&quot;laravel-livewire&quot;}],&quot;replacement&quot;:null,&quot;created_at&quot;:{&quot;human&quot;:&quot;9 months ago&quot;,&quot;datetime&quot;:&quot;2024-05-14 13:08:29&quot;,&quot;date&quot;:&quot;2024-05-14&quot;,&quot;formatted&quot;:&quot;May 14th, 2024&quot;},&quot;author&quot;:{&quot;id&quot;:6,&quot;name&quot;:&quot;Alex Garrett-Smith&quot;,&quot;avatar&quot;:&quot;https://codecourse-avatars.ams3.digitaloceanspaces.com/4GqnwYOVonIz6YVfLLVtWMRFH3dB7Dyx&quot;,&quot;bio&quot;:&quot;Hey, I&#39;m the founder of Codecourse!&quot;},&quot;user&quot;:{&quot;is_saved&quot;:null,&quot;in_progress&quot;:null,&quot;last_episode&quot;:null,&quot;played_seconds&quot;:null,&quot;remaining_seconds&quot;:6041,&quot;percentage_progress&quot;:0}},{&quot;id&quot;:523,&quot;title&quot;:&quot;Building Reactive Realtime Applications with Livewire&quot;,&quot;slug&quot;:&quot;building-reactive-realtime-applications-with-livewire&quot;,&quot;description&quot;:&quot;Livewire can react and re-render anywhere you need it to. But what if we have a infinite scrolling timeline of user posted content with updates in realtime? With added reactivity, we need to be a bit more careful about performance.\r\n\r\nLet’s build this together, making sure we keep things running smoothly along the way.&quot;,&quot;description_short&quot;:&quot;Livewire can react and re-render anywhere you need it to. But what if we have...&quot;,&quot;difficulty&quot;:&quot;intermediate&quot;,&quot;github_repository&quot;:&quot;https://github.com/codecourse/building-reactive-realtime-applications-with-livewire&quot;,&quot;description_markdown&quot;:&quot;&lt;p&gt;Livewire can react and re-render anywhere you need it to. But what if we have a infinite scrolling timeline of user posted content with updates in realtime? With added reactivity, we need to be a bit more careful about performance.&lt;/p&gt;\n&lt;p&gt;Let’s build this together, making sure we keep things running smoothly along the way.&lt;/p&gt;\n&quot;,&quot;free&quot;:false,&quot;ongoing&quot;:false,&quot;upcoming&quot;:false,&quot;type&quot;:&quot;course&quot;,&quot;type_title&quot;:&quot;Course&quot;,&quot;new&quot;:false,&quot;parts_count&quot;:null,&quot;has_new_parts&quot;:false,&quot;duration_seconds&quot;:6187,&quot;duration&quot;:{&quot;formatted&quot;:{&quot;hours&quot;:1,&quot;minutes&quot;:43,&quot;seconds&quot;:&quot;07&quot;}},&quot;url&quot;:&quot;https://codecourse.com/courses/building-reactive-realtime-applications-with-livewire&quot;,&quot;newsletter&quot;:false,&quot;topics&quot;:[{&quot;id&quot;:26,&quot;title&quot;:&quot;Livewire&quot;,&quot;description&quot;:&quot;A full-stack framework for Laravel that makes building dynamic interfaces simple.&quot;,&quot;slug&quot;:&quot;laravel-livewire&quot;}],&quot;replacement&quot;:null,&quot;created_at&quot;:{&quot;human&quot;:&quot;1 year ago&quot;,&quot;datetime&quot;:&quot;2023-10-31 18:44:58&quot;,&quot;date&quot;:&quot;2023-10-31&quot;,&quot;formatted&quot;:&quot;October 31st, 2023&quot;},&quot;author&quot;:{&quot;id&quot;:6,&quot;name&quot;:&quot;Alex Garrett-Smith&quot;,&quot;avatar&quot;:&quot;https://codecourse-avatars.ams3.digitaloceanspaces.com/4GqnwYOVonIz6YVfLLVtWMRFH3dB7Dyx&quot;,&quot;bio&quot;:&quot;Hey, I&#39;m the founder of Codecourse!&quot;},&quot;user&quot;:{&quot;is_saved&quot;:null,&quot;in_progress&quot;:null,&quot;last_episode&quot;:null,&quot;played_seconds&quot;:null,&quot;remaining_seconds&quot;:6187,&quot;percentage_progress&quot;:0}},{&quot;id&quot;:549,&quot;title&quot;:&quot;Build a Trello Clone With Livewire&quot;,&quot;slug&quot;:&quot;build-a-trello-clone-with-livewire&quot;,&quot;description&quot;:&quot;Get ready to master drag and drop sorting in Livewire, by building a Trello clone.\r\n\r\nWe’ll start out by building the interface completely from scratch, then add the ability to sort columns and cards, including moving cards around columns. As we sort everything, we’ll keep the database perfectly updated with the new order.\r\n\r\nOur Trello clone will also allow us to edit column titles inline, edit cards and add notes, archive cards and columns, and put them back on the board.&quot;,&quot;description_short&quot;:&quot;Get ready to master drag and drop sorting in Livewire, by building a Trello clone....&quot;,&quot;difficulty&quot;:&quot;intermediate&quot;,&quot;github_repository&quot;:&quot;https://github.com/codecourse/livewire-trello-clone&quot;,&quot;description_markdown&quot;:&quot;&lt;p&gt;Get ready to master drag and drop sorting in Livewire, by building a Trello clone.&lt;/p&gt;\n&lt;p&gt;We’ll start out by building the interface completely from scratch, then add the ability to sort columns and cards, including moving cards around columns. As we sort everything, we’ll keep the database perfectly updated with the new order.&lt;/p&gt;\n&lt;p&gt;Our Trello clone will also allow us to edit column titles inline, edit cards and add notes, archive cards and columns, and put them back on the board.&lt;/p&gt;\n&quot;,&quot;free&quot;:false,&quot;ongoing&quot;:false,&quot;upcoming&quot;:false,&quot;type&quot;:&quot;course&quot;,&quot;type_title&quot;:&quot;Course&quot;,&quot;new&quot;:false,&quot;parts_count&quot;:null,&quot;has_new_parts&quot;:false,&quot;duration_seconds&quot;:8855,&quot;duration&quot;:{&quot;formatted&quot;:{&quot;hours&quot;:2,&quot;minutes&quot;:27,&quot;seconds&quot;:&quot;35&quot;}},&quot;url&quot;:&quot;https://codecourse.com/courses/build-a-trello-clone-with-livewire&quot;,&quot;newsletter&quot;:true,&quot;topics&quot;:[{&quot;id&quot;:26,&quot;title&quot;:&quot;Livewire&quot;,&quot;description&quot;:&quot;A full-stack framework for Laravel that makes building dynamic interfaces simple.&quot;,&quot;slug&quot;:&quot;laravel-livewire&quot;}],&quot;replacement&quot;:null,&quot;created_at&quot;:{&quot;human&quot;:&quot;8 months ago&quot;,&quot;datetime&quot;:&quot;2024-05-22 19:54:29&quot;,&quot;date&quot;:&quot;2024-05-22&quot;,&quot;formatted&quot;:&quot;May 22nd, 2024&quot;},&quot;author&quot;:{&quot;id&quot;:6,&quot;name&quot;:&quot;Alex Garrett-Smith&quot;,&quot;avatar&quot;:&quot;https://codecourse-avatars.ams3.digitaloceanspaces.com/4GqnwYOVonIz6YVfLLVtWMRFH3dB7Dyx&quot;,&quot;bio&quot;:&quot;Hey, I&#39;m the founder of Codecourse!&quot;},&quot;user&quot;:{&quot;is_saved&quot;:null,&quot;in_progress&quot;:null,&quot;last_episode&quot;:null,&quot;played_seconds&quot;:null,&quot;remaining_seconds&quot;:8855,&quot;percentage_progress&quot;:0}},{&quot;id&quot;:542,&quot;title&quot;:&quot;Build an Appointment Booking System With Livewire&quot;,&quot;slug&quot;:&quot;build-an-appointment-booking-system-with-livewire&quot;,&quot;description&quot;:&quot;Building an availability calendar and booking system is a notoriously difficult problem to solve. That’s exactly what we’re going to cover in this course.\r\n\r\nStep by step, we’ll build an appointment slot generator that calculates availability based on employee schedules, employee’s booked time off, the length of service chosen, existing appointments, and cancelled appointments.\r\n\r\nFor maximum flexibility, we’ll also allow multi-employee availability checks, so we’ll be able to see every employee who can perform a service (and their available slots).\r\n\r\nTo finish up, we’ll create an entire booking flow with Livewire, including a beautiful booking calendar that shows detailed availability across multiple dates, the ability to choose a time slot — and finally the ability to book an appointment.\r\n\r\nPhew. We’ve got a lot to learn — let’s build a booking system with Livewire!&quot;,&quot;description_short&quot;:&quot;Building an availability calendar and booking system is a notoriously difficult problem to solve. That’s...&quot;,&quot;difficulty&quot;:&quot;advanced&quot;,&quot;github_repository&quot;:&quot;https://github.com/codecourse/laravel-booking-system-livewire&quot;,&quot;description_markdown&quot;:&quot;&lt;p&gt;Building an availability calendar and booking system is a notoriously difficult problem to solve. That’s exactly what we’re going to cover in this course.&lt;/p&gt;\n&lt;p&gt;Step by step, we’ll build an appointment slot generator that calculates availability based on employee schedules, employee’s booked time off, the length of service chosen, existing appointments, and cancelled appointments.&lt;/p&gt;\n&lt;p&gt;For maximum flexibility, we’ll also allow multi-employee availability checks, so we’ll be able to see every employee who can perform a service (and their available slots).&lt;/p&gt;\n&lt;p&gt;To finish up, we’ll create an entire booking flow with Livewire, including a beautiful booking calendar that shows detailed availability across multiple dates, the ability to choose a time slot — and finally the ability to book an appointment.&lt;/p&gt;\n&lt;p&gt;Phew. We’ve got a lot to learn — let’s build a booking system with Livewire!&lt;/p&gt;\n&quot;,&quot;free&quot;:false,&quot;ongoing&quot;:false,&quot;upcoming&quot;:false,&quot;type&quot;:&quot;course&quot;,&quot;type_title&quot;:&quot;Course&quot;,&quot;new&quot;:false,&quot;parts_count&quot;:null,&quot;has_new_parts&quot;:false,&quot;duration_seconds&quot;:11043,&quot;duration&quot;:{&quot;formatted&quot;:{&quot;hours&quot;:3,&quot;minutes&quot;:4,&quot;seconds&quot;:&quot;03&quot;}},&quot;url&quot;:&quot;https://codecourse.com/courses/build-an-appointment-booking-system-with-livewire&quot;,&quot;newsletter&quot;:false,&quot;topics&quot;:[{&quot;id&quot;:26,&quot;title&quot;:&quot;Livewire&quot;,&quot;description&quot;:&quot;A full-stack framework for Laravel that makes building dynamic interfaces simple.&quot;,&quot;slug&quot;:&quot;laravel-livewire&quot;}],&quot;replacement&quot;:null,&quot;created_at&quot;:{&quot;human&quot;:&quot;9 months ago&quot;,&quot;datetime&quot;:&quot;2024-04-25 10:00:50&quot;,&quot;date&quot;:&quot;2024-04-25&quot;,&quot;formatted&quot;:&quot;April 25th, 2024&quot;},&quot;author&quot;:{&quot;id&quot;:6,&quot;name&quot;:&quot;Alex Garrett-Smith&quot;,&quot;avatar&quot;:&quot;https://codecourse-avatars.ams3.digitaloceanspaces.com/4GqnwYOVonIz6YVfLLVtWMRFH3dB7Dyx&quot;,&quot;bio&quot;:&quot;Hey, I&#39;m the founder of Codecourse!&quot;},&quot;user&quot;:{&quot;is_saved&quot;:null,&quot;in_progress&quot;:null,&quot;last_episode&quot;:null,&quot;played_seconds&quot;:null,&quot;remaining_seconds&quot;:11043,&quot;percentage_progress&quot;:0}}],&quot;duration&quot;:{&quot;formatted&quot;:{&quot;hours&quot;:8,&quot;minutes&quot;:55,&quot;seconds&quot;:&quot;26&quot;}},&quot;user&quot;:{&quot;played_seconds&quot;:null,&quot;remaining_seconds&quot;:32126,&quot;percentage_progress&quot;:0}},{&quot;id&quot;:4,&quot;title&quot;:&quot;Learn Alpine.js&quot;,&quot;slug&quot;:&quot;learn-alpinejs&quot;,&quot;description&quot;:&quot;Alpine.js a lightweight JavaScript framework with serious power.\r\n\r\nEither used on its own, sprinkled into an existing project, or paired with Livewire and Tailwind CSS to form the TALL stack — its straightforward syntax, extensibility and first-party plugins will allow you to add dynamic interfaces anywhere you need.&quot;,&quot;topic&quot;:{&quot;id&quot;:27,&quot;title&quot;:&quot;Alpine.js&quot;,&quot;description&quot;:&quot;A rugged, minimal framework for composing JavaScript behaviour in your markup.&quot;,&quot;slug&quot;:&quot;alpine-js&quot;},&quot;description_markdown&quot;:&quot;&lt;p&gt;Alpine.js a lightweight JavaScript framework with serious power.&lt;/p&gt;\n&lt;p&gt;Either used on its own, sprinkled into an existing project, or paired with Livewire and Tailwind CSS to form the TALL stack — its straightforward syntax, extensibility and first-party plugins will allow you to add dynamic interfaces anywhere you need.&lt;/p&gt;\n&quot;,&quot;duration_seconds&quot;:15424,&quot;courses_count&quot;:4,&quot;courses&quot;:[{&quot;id&quot;:474,&quot;title&quot;:&quot;Learn Alpine.js&quot;,&quot;slug&quot;:&quot;learn-alpine-js&quot;,&quot;description&quot;:&quot;Alpine.js is a refreshingly minimal JavaScript framework that gives you the reactive nature of Vue and React, but with much more simplicity. This course will get you up to speed on how to use it, with plenty of practical examples along the way.&quot;,&quot;description_short&quot;:&quot;Alpine.js is a refreshingly minimal JavaScript framework that gives you the reactive nature of Vue...&quot;,&quot;difficulty&quot;:&quot;beginner&quot;,&quot;github_repository&quot;:&quot;https://github.com/codecourse/learn-alpinejs&quot;,&quot;description_markdown&quot;:&quot;&lt;p&gt;Alpine.js is a refreshingly minimal JavaScript framework that gives you the reactive nature of Vue and React, but with much more simplicity. This course will get you up to speed on how to use it, with plenty of practical examples along the way.&lt;/p&gt;\n&quot;,&quot;free&quot;:true,&quot;ongoing&quot;:false,&quot;upcoming&quot;:false,&quot;type&quot;:&quot;course&quot;,&quot;type_title&quot;:&quot;Course&quot;,&quot;new&quot;:false,&quot;parts_count&quot;:null,&quot;has_new_parts&quot;:false,&quot;duration_seconds&quot;:7830,&quot;duration&quot;:{&quot;formatted&quot;:{&quot;hours&quot;:2,&quot;minutes&quot;:10,&quot;seconds&quot;:&quot;30&quot;}},&quot;url&quot;:&quot;https://codecourse.com/courses/learn-alpine-js&quot;,&quot;newsletter&quot;:false,&quot;topics&quot;:[{&quot;id&quot;:27,&quot;title&quot;:&quot;Alpine.js&quot;,&quot;description&quot;:&quot;A rugged, minimal framework for composing JavaScript behaviour in your markup.&quot;,&quot;slug&quot;:&quot;alpine-js&quot;}],&quot;replacement&quot;:null,&quot;created_at&quot;:{&quot;human&quot;:&quot;3 years ago&quot;,&quot;datetime&quot;:&quot;2021-09-07 20:50:00&quot;,&quot;date&quot;:&quot;2021-09-07&quot;,&quot;formatted&quot;:&quot;September 7th, 2021&quot;},&quot;author&quot;:{&quot;id&quot;:6,&quot;name&quot;:&quot;Alex Garrett-Smith&quot;,&quot;avatar&quot;:&quot;https://codecourse-avatars.ams3.digitaloceanspaces.com/4GqnwYOVonIz6YVfLLVtWMRFH3dB7Dyx&quot;,&quot;bio&quot;:&quot;Hey, I&#39;m the founder of Codecourse!&quot;},&quot;user&quot;:{&quot;is_saved&quot;:null,&quot;in_progress&quot;:null,&quot;last_episode&quot;:null,&quot;played_seconds&quot;:null,&quot;remaining_seconds&quot;:7830,&quot;percentage_progress&quot;:0}},{&quot;id&quot;:477,&quot;title&quot;:&quot;Alpine Store Basics&quot;,&quot;slug&quot;:&quot;alpine-store-basics&quot;,&quot;description&quot;:&quot;Forget dispatching events to keep your state together. In Alpine, stores give you a central location for data that make state management a breeze. In this series, we&#39;ll cover everything you need to know to get started with Alpine stores!&quot;,&quot;description_short&quot;:&quot;Forget dispatching events to keep your state together. In Alpine, stores give you a central...&quot;,&quot;difficulty&quot;:&quot;intermediate&quot;,&quot;github_repository&quot;:null,&quot;description_markdown&quot;:&quot;&lt;p&gt;Forget dispatching events to keep your state together. In Alpine, stores give you a central location for data that make state management a breeze. In this series, we&#39;ll cover everything you need to know to get started with Alpine stores!&lt;/p&gt;\n&quot;,&quot;free&quot;:false,&quot;ongoing&quot;:false,&quot;upcoming&quot;:false,&quot;type&quot;:&quot;course&quot;,&quot;type_title&quot;:&quot;Course&quot;,&quot;new&quot;:false,&quot;parts_count&quot;:null,&quot;has_new_parts&quot;:false,&quot;duration_seconds&quot;:1752,&quot;duration&quot;:{&quot;formatted&quot;:{&quot;hours&quot;:0,&quot;minutes&quot;:29,&quot;seconds&quot;:&quot;12&quot;}},&quot;url&quot;:&quot;https://codecourse.com/courses/alpine-store-basics&quot;,&quot;newsletter&quot;:false,&quot;topics&quot;:[{&quot;id&quot;:27,&quot;title&quot;:&quot;Alpine.js&quot;,&quot;description&quot;:&quot;A rugged, minimal framework for composing JavaScript behaviour in your markup.&quot;,&quot;slug&quot;:&quot;alpine-js&quot;}],&quot;replacement&quot;:null,&quot;created_at&quot;:{&quot;human&quot;:&quot;3 years ago&quot;,&quot;datetime&quot;:&quot;2021-10-20 10:20:00&quot;,&quot;date&quot;:&quot;2021-10-20&quot;,&quot;formatted&quot;:&quot;October 20th, 2021&quot;},&quot;author&quot;:{&quot;id&quot;:6,&quot;name&quot;:&quot;Alex Garrett-Smith&quot;,&quot;avatar&quot;:&quot;https://codecourse-avatars.ams3.digitaloceanspaces.com/4GqnwYOVonIz6YVfLLVtWMRFH3dB7Dyx&quot;,&quot;bio&quot;:&quot;Hey, I&#39;m the founder of Codecourse!&quot;},&quot;user&quot;:{&quot;is_saved&quot;:null,&quot;in_progress&quot;:null,&quot;last_episode&quot;:null,&quot;played_seconds&quot;:null,&quot;remaining_seconds&quot;:1752,&quot;percentage_progress&quot;:0}},{&quot;id&quot;:478,&quot;title&quot;:&quot;Build a Notes App with Alpine.js&quot;,&quot;slug&quot;:&quot;build-a-notes-app-with-alpine-js&quot;,&quot;description&quot;:&quot;Put Alpine.js state management to the test by building a fully working notes app in the browser.&quot;,&quot;description_short&quot;:&quot;Put Alpine.js state management to the test by building a fully working notes app in...&quot;,&quot;difficulty&quot;:&quot;intermediate&quot;,&quot;github_repository&quot;:&quot;https://github.com/codecourse/build-a-notes-app-with-alpine-js&quot;,&quot;description_markdown&quot;:&quot;&lt;p&gt;Put Alpine.js state management to the test by building a fully working notes app in the browser.&lt;/p&gt;\n&quot;,&quot;free&quot;:false,&quot;ongoing&quot;:false,&quot;upcoming&quot;:false,&quot;type&quot;:&quot;course&quot;,&quot;type_title&quot;:&quot;Course&quot;,&quot;new&quot;:false,&quot;parts_count&quot;:null,&quot;has_new_parts&quot;:false,&quot;duration_seconds&quot;:3321,&quot;duration&quot;:{&quot;formatted&quot;:{&quot;hours&quot;:0,&quot;minutes&quot;:55,&quot;seconds&quot;:&quot;21&quot;}},&quot;url&quot;:&quot;https://codecourse.com/courses/build-a-notes-app-with-alpine-js&quot;,&quot;newsletter&quot;:false,&quot;topics&quot;:[{&quot;id&quot;:27,&quot;title&quot;:&quot;Alpine.js&quot;,&quot;description&quot;:&quot;A rugged, minimal framework for composing JavaScript behaviour in your markup.&quot;,&quot;slug&quot;:&quot;alpine-js&quot;}],&quot;replacement&quot;:null,&quot;created_at&quot;:{&quot;human&quot;:&quot;3 years ago&quot;,&quot;datetime&quot;:&quot;2021-10-22 11:25:00&quot;,&quot;date&quot;:&quot;2021-10-22&quot;,&quot;formatted&quot;:&quot;October 22nd, 2021&quot;},&quot;author&quot;:{&quot;id&quot;:6,&quot;name&quot;:&quot;Alex Garrett-Smith&quot;,&quot;avatar&quot;:&quot;https://codecourse-avatars.ams3.digitaloceanspaces.com/4GqnwYOVonIz6YVfLLVtWMRFH3dB7Dyx&quot;,&quot;bio&quot;:&quot;Hey, I&#39;m the founder of Codecourse!&quot;},&quot;user&quot;:{&quot;is_saved&quot;:null,&quot;in_progress&quot;:null,&quot;last_episode&quot;:null,&quot;played_seconds&quot;:null,&quot;remaining_seconds&quot;:3321,&quot;percentage_progress&quot;:0}},{&quot;id&quot;:466,&quot;title&quot;:&quot;Meilisearch Instant Search with Alpine.js&quot;,&quot;slug&quot;:&quot;meilisearch-instant-search-with-alpine-js&quot;,&quot;description&quot;:&quot;Combining the power of Meilisearch and the simplicity of Alpine.js to build an instant, as-you-type, result-highlighted dropdown search. We’ll cover making the Alpine.js component highly re-usable, so you can use it in multiple places, or with an entirely different index and options.&quot;,&quot;description_short&quot;:&quot;Combining the power of Meilisearch and the simplicity of Alpine.js to build an instant, as-you-type,...&quot;,&quot;difficulty&quot;:&quot;intermediate&quot;,&quot;github_repository&quot;:&quot;https://github.com/codecourse/meilisearch-instant-search-with-alpine-js&quot;,&quot;description_markdown&quot;:&quot;&lt;p&gt;Combining the power of Meilisearch and the simplicity of Alpine.js to build an instant, as-you-type, result-highlighted dropdown search. We’ll cover making the Alpine.js component highly re-usable, so you can use it in multiple places, or with an entirely different index and options.&lt;/p&gt;\n&quot;,&quot;free&quot;:false,&quot;ongoing&quot;:false,&quot;upcoming&quot;:false,&quot;type&quot;:&quot;course&quot;,&quot;type_title&quot;:&quot;Course&quot;,&quot;new&quot;:false,&quot;parts_count&quot;:null,&quot;has_new_parts&quot;:false,&quot;duration_seconds&quot;:2521,&quot;duration&quot;:{&quot;formatted&quot;:{&quot;hours&quot;:0,&quot;minutes&quot;:42,&quot;seconds&quot;:&quot;01&quot;}},&quot;url&quot;:&quot;https://codecourse.com/courses/meilisearch-instant-search-with-alpine-js&quot;,&quot;newsletter&quot;:false,&quot;topics&quot;:[{&quot;id&quot;:8,&quot;title&quot;:&quot;Laravel&quot;,&quot;description&quot;:&quot;The PHP framework for web artisans.&quot;,&quot;slug&quot;:&quot;laravel&quot;},{&quot;id&quot;:27,&quot;title&quot;:&quot;Alpine.js&quot;,&quot;description&quot;:&quot;A rugged, minimal framework for composing JavaScript behaviour in your markup.&quot;,&quot;slug&quot;:&quot;alpine-js&quot;}],&quot;replacement&quot;:null,&quot;created_at&quot;:{&quot;human&quot;:&quot;3 years ago&quot;,&quot;datetime&quot;:&quot;2021-05-28 15:30:00&quot;,&quot;date&quot;:&quot;2021-05-28&quot;,&quot;formatted&quot;:&quot;May 28th, 2021&quot;},&quot;author&quot;:{&quot;id&quot;:6,&quot;name&quot;:&quot;Alex Garrett-Smith&quot;,&quot;avatar&quot;:&quot;https://codecourse-avatars.ams3.digitaloceanspaces.com/4GqnwYOVonIz6YVfLLVtWMRFH3dB7Dyx&quot;,&quot;bio&quot;:&quot;Hey, I&#39;m the founder of Codecourse!&quot;},&quot;user&quot;:{&quot;is_saved&quot;:null,&quot;in_progress&quot;:null,&quot;last_episode&quot;:null,&quot;played_seconds&quot;:null,&quot;remaining_seconds&quot;:2521,&quot;percentage_progress&quot;:0}}],&quot;duration&quot;:{&quot;formatted&quot;:{&quot;hours&quot;:4,&quot;minutes&quot;:17,&quot;seconds&quot;:&quot;04&quot;}},&quot;user&quot;:{&quot;played_seconds&quot;:null,&quot;remaining_seconds&quot;:15424,&quot;percentage_progress&quot;:0}}],&quot;testimonials&quot;:[{&quot;id&quot;:56,&quot;profile_photo_url&quot;:&quot;images/testimonials/38.webp&quot;,&quot;name&quot;:&quot;Joseph Ruano&quot;,&quot;description&quot;:&quot;Joseph Ruano&quot;,&quot;twitter_handle&quot;:null,&quot;website_name&quot;:&quot;jruano.dev&quot;,&quot;website_url&quot;:&quot;https://jruano.dev&quot;,&quot;body&quot;:&quot;Codecourse has been an important place for me to improve and grow professionally. Thanks to Alex for providing such great content and learning resources.&quot;},{&quot;id&quot;:55,&quot;profile_photo_url&quot;:&quot;images/testimonials/35.webp&quot;,&quot;name&quot;:&quot;Oussama Sid&quot;,&quot;description&quot;:&quot;Oussama Sid&quot;,&quot;twitter_handle&quot;:null,&quot;website_name&quot;:&quot;coderflex.com&quot;,&quot;website_url&quot;:&quot;https://coderflex.com&quot;,&quot;body&quot;:&quot;Codecourse has been a pivotal turning point in my career as a software engineer. Thanks to Alex&#39;s courses, I successfully leveled up from a novice to someone who is now unafraid to accept any challenge. \n\nWorth every penny.&quot;},{&quot;id&quot;:54,&quot;profile_photo_url&quot;:&quot;images/testimonials/36.webp&quot;,&quot;name&quot;:&quot;Vishnu&quot;,&quot;description&quot;:&quot;Vishnu&quot;,&quot;twitter_handle&quot;:null,&quot;website_name&quot;:&quot;vishnupadmanabhan.com&quot;,&quot;website_url&quot;:&quot;https://vishnupadmanabhan.com&quot;,&quot;body&quot;:&quot;I have been learning from Alex since the phpacademy days. Was ecstatic when codecourse was launched. Alex is one of the best teacher out there. Explaining complex topics effortlessly is his superpower!&quot;},{&quot;id&quot;:53,&quot;profile_photo_url&quot;:&quot;images/testimonials/37.webp&quot;,&quot;name&quot;:&quot;Digital Workflow Systems&quot;,&quot;description&quot;:&quot;Digital Workflow Systems&quot;,&quot;twitter_handle&quot;:null,&quot;website_name&quot;:&quot;double-click-design.com&quot;,&quot;website_url&quot;:&quot;https://www.double-click-design.com&quot;,&quot;body&quot;:&quot;Codecourse&#39;s amazing collection of quality courses will keep your skills set at the cutting edge. It&#39;s the perfect must have resource for adapting fast in business environments.&quot;},{&quot;id&quot;:50,&quot;profile_photo_url&quot;:&quot;images/testimonials/34.webp&quot;,&quot;name&quot;:&quot;Mohamed Suhail&quot;,&quot;description&quot;:&quot;SnazzyIslander&quot;,&quot;twitter_handle&quot;:&quot;SnazzyIslander&quot;,&quot;website_name&quot;:null,&quot;website_url&quot;:null,&quot;body&quot;:&quot;I have been regularly using Codecourse to keep me updated about Laravel. This website has saved me a lot of my time and money as I find explanations really easy to understand. I am glad I found Codecourse early as a student. I am very grateful for setting me up for my career.&quot;},{&quot;id&quot;:49,&quot;profile_photo_url&quot;:&quot;images/testimonials/33.webp&quot;,&quot;name&quot;:&quot;David Carr&quot;,&quot;description&quot;:&quot;https://dcblog.dev&quot;,&quot;twitter_handle&quot;:null,&quot;website_name&quot;:&quot;dcblog.dev&quot;,&quot;website_url&quot;:&quot;https://dcblog.dev&quot;,&quot;body&quot;:&quot;Codecourse is a brilliant learning resource. Keep up to date with Laravel and related languages. I love the practical examples that simplify complex topics.&quot;},{&quot;id&quot;:48,&quot;profile_photo_url&quot;:&quot;images/testimonials/32.webp&quot;,&quot;name&quot;:&quot;Tapan Sharma&quot;,&quot;description&quot;:&quot;tapansharma.dev&quot;,&quot;twitter_handle&quot;:null,&quot;website_name&quot;:&quot;tapansharma.dev&quot;,&quot;website_url&quot;:&quot;https://tapansharma.dev&quot;,&quot;body&quot;:&quot;I recently became a lifetime member of codecourse and this has been one of my best investments so far! The projects covered here are genuinely practical and can be applied for building real world applications.&quot;},{&quot;id&quot;:47,&quot;profile_photo_url&quot;:&quot;images/testimonials/31.webp&quot;,&quot;name&quot;:&quot;Benjamin Crozat&quot;,&quot;description&quot;:&quot;ashallendesign.co.uk&quot;,&quot;twitter_handle&quot;:null,&quot;website_name&quot;:&quot;benjamincrozat.com&quot;,&quot;website_url&quot;:&quot;https://benjamincrozat.com&quot;,&quot;body&quot;:&quot;Alex doesn&#39;t fear tackling big topics that are extremely valuable to any developer.&quot;},{&quot;id&quot;:46,&quot;profile_photo_url&quot;:&quot;images/testimonials/30.webp&quot;,&quot;name&quot;:&quot;Ash Allen&quot;,&quot;description&quot;:&quot;ashallendesign.co.uk&quot;,&quot;twitter_handle&quot;:null,&quot;website_name&quot;:&quot;ashallendesign.co.uk&quot;,&quot;website_url&quot;:&quot;https://ashallendesign.co.uk&quot;,&quot;body&quot;:&quot;Codecourse is jam-packed with useful and easy-to-follow courses. I&#39;m always learning new things from each video!&quot;},{&quot;id&quot;:27,&quot;profile_photo_url&quot;:&quot;images/testimonials/10.webp&quot;,&quot;name&quot;:&quot;Jam Ward&quot;,&quot;description&quot;:&quot;Lincolnshire, UK&quot;,&quot;twitter_handle&quot;:null,&quot;website_name&quot;:&quot;jam1e.co.uk&quot;,&quot;website_url&quot;:&quot;https://jam1e.co.uk&quot;,&quot;body&quot;:&quot;Codecourse has been vital in my journey to become the Web Developer I am today. Not only have the skills I&#39;ve learnt helped me start my own business, but it has also enabled me to help many other businesses start up.&quot;},{&quot;id&quot;:40,&quot;profile_photo_url&quot;:&quot;images/testimonials/24.webp&quot;,&quot;name&quot;:&quot;Scott Zirkel&quot;,&quot;description&quot;:&quot;Texas Hill Country&quot;,&quot;twitter_handle&quot;:null,&quot;website_name&quot;:&quot;scottzirkel.com&quot;,&quot;website_url&quot;:&quot;https://scottzirkel.com&quot;,&quot;body&quot;:&quot;I love that Codecourse tackles deeper concepts than are covered in the docs. Really helps push me as a developer.\n\nThe lifetime license is a must have.&quot;},{&quot;id&quot;:29,&quot;profile_photo_url&quot;:&quot;images/testimonials/12.webp&quot;,&quot;name&quot;:&quot;Jakub Theimer&quot;,&quot;description&quot;:&quot;Olomouc, Czech republic&quot;,&quot;twitter_handle&quot;:&quot;theimerj&quot;,&quot;website_name&quot;:null,&quot;website_url&quot;:null,&quot;body&quot;:&quot;Thanks to Alex way back during the phpacademy era, I started programming. He is my educational hero and I owe him a lot.&quot;},{&quot;id&quot;:42,&quot;profile_photo_url&quot;:&quot;images/testimonials/26.webp&quot;,&quot;name&quot;:&quot;Jesper Andersen&quot;,&quot;description&quot;:&quot;Full stack developer, Bewise&quot;,&quot;twitter_handle&quot;:null,&quot;website_name&quot;:null,&quot;website_url&quot;:null,&quot;body&quot;:&quot;As a slow reader, Codecourse has helped me develop my skills faster than I would have imagined. The usage of great real life examples and clear voiceover makes me able to watch the series for hours straight.\n\nWithout Codecourse, I would never have been where I am today.&quot;},{&quot;id&quot;:43,&quot;profile_photo_url&quot;:&quot;images/testimonials/28.webp&quot;,&quot;name&quot;:&quot;Steve Popoola&quot;,&quot;description&quot;:&quot;Tech Lead&quot;,&quot;twitter_handle&quot;:null,&quot;website_name&quot;:null,&quot;website_url&quot;:null,&quot;body&quot;:&quot;Codecourse is an indispensable knowledge tool for both experienced and new developers. For me, Codecourse is a valuable companion in my development toolkit!&quot;},{&quot;id&quot;:33,&quot;profile_photo_url&quot;:&quot;images/testimonials/18.webp&quot;,&quot;name&quot;:&quot;Ziyo Shams&quot;,&quot;description&quot;:&quot;New York&quot;,&quot;twitter_handle&quot;:&quot;shamsziyo&quot;,&quot;website_name&quot;:null,&quot;website_url&quot;:null,&quot;body&quot;:&quot;Codecourse is what got me into web development. Diverse content, superb quality courses, and most of all excellent explanations.&quot;},{&quot;id&quot;:17,&quot;profile_photo_url&quot;:&quot;images/testimonials/02.webp&quot;,&quot;name&quot;:&quot;Steve McDougall&quot;,&quot;description&quot;:&quot;Cardiff, UK&quot;,&quot;twitter_handle&quot;:&quot;JustSteveKing&quot;,&quot;website_name&quot;:null,&quot;website_url&quot;:null,&quot;body&quot;:&quot;Codecourse is my go to for learning anything development related. Not only is the content high quality, but the subjects are varied and concise. Alex is a fantastic teacher, and always explains topics in an easy to understand way.&quot;},{&quot;id&quot;:20,&quot;profile_photo_url&quot;:&quot;images/testimonials/04.webp&quot;,&quot;name&quot;:&quot;Bashiru Ibrahim&quot;,&quot;description&quot;:&quot;Nigeria&quot;,&quot;twitter_handle&quot;:&quot;bashiru4u&quot;,&quot;website_name&quot;:null,&quot;website_url&quot;:null,&quot;body&quot;:&quot;I discovered my career on Codecourse, before even being a pro member. Thank you Alex!&quot;},{&quot;id&quot;:22,&quot;profile_photo_url&quot;:&quot;images/testimonials/06.webp&quot;,&quot;name&quot;:&quot;Zeug&quot;,&quot;description&quot;:&quot;Hamburg, Germany&quot;,&quot;twitter_handle&quot;:&quot;zeug&quot;,&quot;website_name&quot;:null,&quot;website_url&quot;:null,&quot;body&quot;:&quot;The videos are easy to understand. It&#39;s awesome!&quot;},{&quot;id&quot;:24,&quot;profile_photo_url&quot;:&quot;images/testimonials/08.webp&quot;,&quot;name&quot;:&quot;Duncan McClean&quot;,&quot;description&quot;:&quot;Scotland&quot;,&quot;twitter_handle&quot;:null,&quot;website_name&quot;:&quot;duncan.mcclean.co.uk&quot;,&quot;website_url&quot;:&quot;https://duncanmcclean.com/&quot;,&quot;body&quot;:&quot;Codecourse is just so simple. I built my first Laravel app in hours thanks to Codecourse.&quot;},{&quot;id&quot;:36,&quot;profile_photo_url&quot;:&quot;images/testimonials/21.webp&quot;,&quot;name&quot;:&quot;Aida Martínez&quot;,&quot;description&quot;:&quot;Spain&quot;,&quot;twitter_handle&quot;:&quot;aida_41d4ma&quot;,&quot;website_name&quot;:null,&quot;website_url&quot;:null,&quot;body&quot;:&quot;Good courses, better explanations! As a hobbyist or professional coder, you&#39;ll find great value. I consider myself lucky to had found Codecourse.&quot;},{&quot;id&quot;:39,&quot;profile_photo_url&quot;:&quot;images/testimonials/23.webp&quot;,&quot;name&quot;:&quot;Steven Grant&quot;,&quot;description&quot;:&quot;Glasgow&quot;,&quot;twitter_handle&quot;:&quot;1stevengrant&quot;,&quot;website_name&quot;:null,&quot;website_url&quot;:null,&quot;body&quot;:&quot;Great practical project examples and code walkthrough that will help you level up your developer chops.&quot;},{&quot;id&quot;:28,&quot;profile_photo_url&quot;:&quot;images/testimonials/11.webp&quot;,&quot;name&quot;:&quot;Kamyab Alex&quot;,&quot;description&quot;:&quot;Iran&quot;,&quot;twitter_handle&quot;:&quot;kamyab_alex&quot;,&quot;website_name&quot;:null,&quot;website_url&quot;:null,&quot;body&quot;:&quot;Codecourse is a place where you can broaden your mind with practical and beneficial web development video tutorials. Highly recommend to anyone who wants to reach at the cutting edge of the web.&quot;},{&quot;id&quot;:41,&quot;profile_photo_url&quot;:&quot;images/testimonials/25.webp&quot;,&quot;name&quot;:&quot;Zuzana Kunckova&quot;,&quot;description&quot;:&quot;Larabelles Founder&quot;,&quot;twitter_handle&quot;:&quot;zuzana_kunckova&quot;,&quot;website_name&quot;:null,&quot;website_url&quot;:null,&quot;body&quot;:&quot;Codecourse is a fantastic platform. Alex has a friendly delivery style. He includes just enough detail to keep the courses comprehensive but not too slow.\n\nThank you, Alex, for making me a better developer!&quot;},{&quot;id&quot;:1,&quot;profile_photo_url&quot;:&quot;images/testimonials/16.webp&quot;,&quot;name&quot;:&quot;Brent Robert&quot;,&quot;description&quot;:&quot;Belgium&quot;,&quot;twitter_handle&quot;:&quot;Brentr0bert&quot;,&quot;website_name&quot;:null,&quot;website_url&quot;:null,&quot;body&quot;:&quot;Codecourse is the way to learn and keep up-to-date with the latest technologies.&quot;}],&quot;topics&quot;:[{&quot;id&quot;:8,&quot;title&quot;:&quot;Laravel&quot;,&quot;description&quot;:&quot;The PHP framework for web artisans.&quot;,&quot;slug&quot;:&quot;laravel&quot;,&quot;courses_count&quot;:225,&quot;parts_count&quot;:3117},{&quot;id&quot;:26,&quot;title&quot;:&quot;Livewire&quot;,&quot;description&quot;:&quot;A full-stack framework for Laravel that makes building dynamic interfaces simple.&quot;,&quot;slug&quot;:&quot;laravel-livewire&quot;,&quot;courses_count&quot;:34,&quot;parts_count&quot;:552},{&quot;id&quot;:11,&quot;title&quot;:&quot;Vue.js&quot;,&quot;description&quot;:&quot;The progressive JavaScript framework.&quot;,&quot;slug&quot;:&quot;vue-js&quot;,&quot;courses_count&quot;:67,&quot;parts_count&quot;:1100},{&quot;id&quot;:28,&quot;title&quot;:&quot;Inertia&quot;,&quot;description&quot;:&quot;Create fully client-side rendered, single-page apps without the complexity of modern SPAs.&quot;,&quot;slug&quot;:&quot;inertia&quot;,&quot;courses_count&quot;:16,&quot;parts_count&quot;:329},{&quot;id&quot;:1,&quot;title&quot;:&quot;PHP&quot;,&quot;description&quot;:&quot;The most popular server side scripting language for the web.&quot;,&quot;slug&quot;:&quot;php&quot;,&quot;courses_count&quot;:137,&quot;parts_count&quot;:1382},{&quot;id&quot;:27,&quot;title&quot;:&quot;Alpine.js&quot;,&quot;description&quot;:&quot;A rugged, minimal framework for composing JavaScript behaviour in your markup.&quot;,&quot;slug&quot;:&quot;alpine-js&quot;,&quot;courses_count&quot;:14,&quot;parts_count&quot;:112}]},&quot;url&quot;:&quot;/&quot;,&quot;version&quot;:&quot;f03baa7578eef7296eda74575ecc2340&quot;}"><!--[--><!----><div class="bg-[rgba(9,13,37,1)] relative z-[1] antialiased bg-[url(&#39;/images/home-background.svg&#39;)] bg-no-repeat bg-[center_top_-240px] md:bg-[center_top_-80px] overflow-x-hidden"><div class="max-w-7xl mx-auto px-6"><!--[--><nav class="py-6 mb-4 xl:mb-8 h-auto xl:h-36 flex items-center justify-between flex-wrap"><a class="block" aria-label="Go to homepage" href="/"><svg width="176" height="31" viewBox="0 0 176 31" fill="none" xmlns="http://www.w3.org/2000/svg" class="w-[176px] h-[31px]"><path d="M29.0227 8.34161C28.7806 9.60382 28.1064 10.7422 27.1157 11.5609C26.1249 12.3796 24.8799 12.8274 23.5947 12.8272C23.2924 12.8255 22.9909 12.7993 22.6929 12.7487C23.0248 13.6281 23.1945 14.5604 23.1938 15.5003C23.1938 19.8077 19.7017 23.2994 15.3944 23.2994C14.37 23.3008 13.3554 23.0997 12.409 22.7077C11.4626 22.3157 10.6029 21.7405 9.87952 21.0152L4.50903 26.3854C5.93692 27.8171 7.63367 28.9523 9.50174 29.7262C11.3698 30.4999 13.3724 30.897 15.3944 30.8944C23.8967 30.8944 30.7888 24.002 30.7888 15.5C30.7916 13.0057 30.1853 10.5484 29.0227 8.34161Z" fill="#57CAFD"></path><path d="M15.3944 0.105604C6.89237 0.105604 8.63538e-06 6.99768 8.63538e-06 15.5C-0.00263902 17.9942 0.603589 20.4513 1.76605 22.6581C2.00808 21.3958 2.68249 20.2574 3.67326 19.4387C4.66403 18.62 5.90916 18.1722 7.19442 18.1725C7.49657 18.1743 7.79804 18.2006 8.09592 18.2513C7.7643 17.3719 7.59467 16.4398 7.5953 15.5C7.5953 11.1926 11.087 7.70087 15.3944 7.70087C16.4187 7.69958 17.4332 7.90071 18.3796 8.2927C19.326 8.68469 20.1856 9.25986 20.909 9.98511L26.2801 4.61431C24.8521 3.18274 23.1553 2.04745 21.2871 1.2737C19.419 0.499948 17.4164 0.102979 15.3944 0.105604Z" fill="#04A4FD"></path><path d="M26.2801 4.61434C24.1418 2.47821 20.7889 1.59827 18.2485 1.59827C14.7303 1.59827 7.59558 3.84122 7.59558 15.5C7.59529 11.1927 11.0873 7.69937 15.3944 7.69937C16.4188 7.69829 17.4334 7.89966 18.3798 8.29191C19.3262 8.68419 20.1857 9.25962 20.909 9.98513C21.6212 10.6974 22.5872 11.0975 23.5944 11.0976C24.6017 11.0976 25.5677 10.6975 26.2799 9.98529C26.9922 9.27307 27.3922 8.30709 27.3922 7.29985C27.3925 6.29259 26.9922 5.32658 26.2801 4.61434Z" fill="#008FE8"></path><path d="M4.5091 26.3854C6.64492 28.5202 9.99873 29.4005 12.5391 29.4005C16.0576 29.4005 23.192 27.1574 23.192 15.4988C23.192 19.8061 19.7 23.2979 15.3926 23.2979C14.3682 23.2992 13.3537 23.0981 12.4072 22.7061C11.4608 22.3141 10.6012 21.739 9.87774 21.0137C9.16294 20.3137 8.20078 19.9241 7.20035 19.9295C6.19993 19.9349 5.24205 20.3349 4.53483 21.0425C3.82764 21.7501 3.42823 22.7082 3.42338 23.7086C3.41857 24.7091 3.80874 25.671 4.5091 26.3854Z" fill="#58BAEE"></path><path d="M40.7399 15.6265C40.7399 11.6316 43.8456 8.79078 47.6756 8.79078C49.1618 8.77938 50.6134 9.23701 51.8199 10.0975C52.0402 10.252 52.2199 10.4567 52.3439 10.6943C52.4678 10.932 52.5323 11.1958 52.532 11.4633C52.5281 11.7806 52.4352 12.0905 52.2636 12.3584C52.092 12.6262 51.8486 12.8415 51.5607 12.98C51.2726 13.1185 50.9515 13.1748 50.6331 13.1426C50.3147 13.1104 50.0116 12.9909 49.7576 12.7976C49.1611 12.343 48.4282 12.0992 47.6756 12.1048C45.9317 12.1048 44.518 13.5679 44.518 15.6265C44.518 17.6851 45.9317 19.1443 47.6756 19.1443C48.4287 19.1484 49.1616 18.9027 49.7576 18.4462C50.0616 18.2207 50.431 18.099 50.8108 18.0992C51.1723 18.0954 51.5255 18.2058 51.8197 18.4144C52.1136 18.623 52.3331 18.919 52.446 19.2594C52.5589 19.5999 52.5597 19.9671 52.4481 20.308C52.3365 20.6489 52.1184 20.9457 51.8252 21.1555C50.6171 22.017 49.1637 22.4747 47.6756 22.4622C43.8456 22.4622 40.7399 19.6175 40.7399 15.6265ZM53.7109 15.6265C53.7109 11.6316 56.8167 8.79078 60.6466 8.79078C64.4765 8.79078 67.5838 11.6355 67.5838 15.6265C67.5838 19.6175 64.4778 22.4622 60.6466 22.4622C56.8154 22.4622 53.7109 19.6175 53.7109 15.6265ZM63.8055 15.6265C63.8055 13.5731 62.3918 12.11 60.6466 12.11C58.9014 12.11 57.489 13.5679 57.489 15.6265C57.489 17.6851 58.9027 19.1443 60.6466 19.1443C62.3905 19.1443 63.8055 17.6759 63.8055 15.6265ZM82.4724 4.57106V20.468C82.4766 20.9241 82.31 21.3655 82.0048 21.7068C81.6995 22.048 81.2772 22.2647 80.8198 22.3148C80.3624 22.3649 79.9027 22.2448 79.5296 21.9779C79.1564 21.711 78.8964 21.3163 78.8004 20.8703C77.737 21.8932 76.3128 22.4644 74.831 22.4622C71.4827 22.4622 68.7693 19.6175 68.7693 15.6265C68.7693 11.6355 71.4827 8.79078 74.831 8.79078C76.2894 8.78954 77.6925 9.34395 78.7499 10.3393V4.57106C78.7499 4.08173 78.9459 3.61245 79.2951 3.26646C79.644 2.92046 80.1175 2.72607 80.6111 2.72607C81.1048 2.72607 81.5782 2.92046 81.9272 3.26646C82.2764 3.61245 82.4724 4.08173 82.4724 4.57106ZM78.8638 15.6265C78.8638 13.5731 77.4488 12.11 75.7049 12.11C73.9613 12.11 72.5476 13.5679 72.5476 15.6265C72.5476 17.6851 73.9613 19.1443 75.7049 19.1443C77.4488 19.1443 78.8638 17.6759 78.8638 15.6265ZM84.0518 15.7211C84.0518 11.6697 86.9057 8.7816 90.4172 8.7816C94.1956 8.7816 96.7921 11.8419 96.7921 15.6502C96.79 16.0553 96.6258 16.4431 96.3358 16.7284C96.0455 17.0138 95.6532 17.1735 95.2445 17.1724H87.9083C88.2915 18.3752 89.2251 19.0904 90.7541 19.0904C91.6956 19.0879 92.6282 18.9095 93.5032 18.5645C93.7595 18.4658 94.0358 18.4302 94.309 18.4608C94.5821 18.4913 94.8437 18.5871 95.0713 18.7399C95.299 18.8927 95.4858 19.0979 95.6155 19.338C95.7455 19.5781 95.8147 19.8459 95.8174 20.1183C95.8166 20.4628 95.7084 20.7986 95.5071 21.0794C95.3061 21.3603 95.0219 21.5724 94.6942 21.6866C93.4293 22.1369 92.098 22.3772 90.7541 22.3978C86.757 22.4622 84.0518 19.7253 84.0518 15.7211ZM92.8574 14.1266C92.7322 13.5738 92.4251 13.078 91.9846 12.717C91.5443 12.356 90.9951 12.1504 90.4238 12.1324C89.363 12.1324 88.1933 12.9041 87.9175 14.1266H92.8574ZM97.8689 15.6265C97.8689 11.6316 100.975 8.79078 104.805 8.79078C106.291 8.77957 107.742 9.23719 108.949 10.0975C109.169 10.252 109.349 10.4567 109.473 10.6943C109.597 10.932 109.661 11.1958 109.661 11.4633C109.66 11.7832 109.569 12.0964 109.398 12.3675C109.226 12.6385 108.982 12.8564 108.691 12.9964C108.401 13.1363 108.077 13.1928 107.756 13.1593C107.436 13.1257 107.131 13.0036 106.876 12.8068C106.281 12.3531 105.551 12.1093 104.801 12.114C103.057 12.114 101.643 13.5771 101.643 15.6304C101.643 17.6838 103.057 19.1482 104.801 19.1482C105.551 19.1529 106.281 18.9091 106.876 18.4554C107.181 18.2301 107.55 18.1084 107.93 18.1084C108.292 18.1046 108.645 18.215 108.939 18.4236C109.233 18.6322 109.453 18.9282 109.566 19.2686C109.679 19.6091 109.679 19.9763 109.568 20.3172C109.456 20.6581 109.238 20.955 108.945 21.1647C107.738 22.0209 106.288 22.4753 104.805 22.4622C100.975 22.4622 97.8689 19.6175 97.8689 15.6265ZM110.84 15.6265C110.84 11.6316 113.946 8.79078 117.776 8.79078C121.605 8.79078 124.713 11.6355 124.713 15.6265C124.713 19.6175 121.607 22.4622 117.776 22.4622C113.944 22.4622 110.84 19.6175 110.84 15.6265ZM120.934 15.6265C120.934 13.5731 119.521 12.11 117.776 12.11C116.03 12.11 114.618 13.5679 114.618 15.6265C114.618 17.6851 116.032 19.1443 117.776 19.1443C119.519 19.1443 120.934 17.6759 120.934 15.6265ZM138.925 10.7468V20.4904C138.922 20.9475 138.745 21.3867 138.43 21.7204C138.115 22.0542 137.684 22.2579 137.224 22.2911C136.764 22.3242 136.308 22.1844 135.948 21.8994C135.587 21.6144 135.348 21.2052 135.278 20.7533C134.364 21.8246 132.996 22.4622 131.254 22.4622C128.182 22.4622 126.179 20.4904 126.179 17.0725V10.7468C126.179 10.265 126.372 9.80294 126.716 9.46224C127.06 9.12153 127.526 8.93014 128.012 8.93014C128.498 8.93014 128.965 9.12153 129.308 9.46224C129.652 9.80294 129.845 10.265 129.845 10.7468V16.452C129.845 18.1136 131.086 19.139 132.524 19.139C134.046 19.139 135.26 17.948 135.26 16.3416V10.7468C135.26 10.265 135.453 9.80294 135.796 9.46224C136.14 9.12153 136.606 8.93014 137.092 8.93014C137.578 8.93014 138.045 9.12153 138.388 9.46224C138.732 9.80294 138.925 10.265 138.925 10.7468ZM150.289 10.5812C150.286 11.0608 150.092 11.5199 149.748 11.8576C149.405 12.1952 148.94 12.3839 148.456 12.3822C145.763 12.3822 144.452 13.5166 144.452 17.0344V20.4904C144.445 20.9686 144.249 21.4249 143.906 21.7615C143.563 22.0981 143.101 22.2883 142.618 22.2913C142.379 22.2923 142.141 22.2466 141.919 22.1566C141.698 22.0667 141.496 21.9343 141.326 21.7671C141.156 21.5999 141.02 21.401 140.927 21.182C140.835 20.9629 140.787 20.7279 140.786 20.4904V10.7468C140.789 10.2897 140.966 9.85049 141.281 9.51676C141.596 9.18306 142.027 8.97933 142.487 8.94614C142.947 8.91299 143.402 9.05285 143.763 9.33785C144.124 9.62284 144.363 10.032 144.433 10.484C145.348 9.41126 146.715 8.77502 148.456 8.77502C148.696 8.77396 148.934 8.81991 149.156 8.91017C149.378 9.00046 149.58 9.1333 149.751 9.30108C149.921 9.46887 150.056 9.66831 150.148 9.88799C150.241 10.1077 150.288 10.3432 150.289 10.5812ZM156.467 22.4346C154.782 22.4464 153.225 22.0836 151.897 21.3225C151.557 21.1244 151.307 20.8044 151.198 20.4286C151.09 20.0527 151.131 19.6498 151.313 19.3033C151.496 18.9567 151.806 18.6931 152.179 18.5668C152.553 18.4405 152.961 18.4614 153.319 18.625C154.247 19.0404 155.361 19.3927 156.446 19.4045C157.531 19.4164 158.247 19.1127 158.268 18.4725C158.293 16.4823 151.196 17.5799 151.278 12.9277C151.323 10.3801 153.497 8.7277 156.767 8.78423C158.267 8.8092 159.504 9.19303 160.723 9.77802C161.042 9.92965 161.298 10.1851 161.45 10.5018C161.601 10.8185 161.638 11.1771 161.555 11.5178C161.472 11.8584 161.273 12.1604 160.992 12.3733C160.712 12.5861 160.365 12.6969 160.012 12.6871C159.8 12.6847 159.592 12.64 159.398 12.5557C158.329 12.0772 157.289 11.8143 156.571 11.8274C155.613 11.8393 154.979 12.2994 154.979 12.8791C154.917 14.8167 162.044 13.6678 161.96 18.3726C161.916 20.8085 159.971 22.4096 156.473 22.4333L156.467 22.4346ZM163.26 15.7211C163.26 11.6697 166.112 8.7816 169.625 8.7816C173.402 8.7816 176 11.8419 176 15.6502C175.998 16.0557 175.833 16.4439 175.543 16.7294C175.252 17.0148 174.859 17.1742 174.45 17.1724H167.122C167.506 18.3752 168.44 19.0904 169.969 19.0904C170.91 19.0879 171.842 18.9094 172.716 18.5645C172.973 18.4659 173.249 18.4303 173.522 18.4609C173.796 18.4914 174.057 18.5872 174.285 18.74C174.513 18.8927 174.7 19.0979 174.83 19.338C174.96 19.5781 175.029 19.8458 175.032 20.1183C175.031 20.4629 174.923 20.7988 174.721 21.0797C174.52 21.3606 174.235 21.5726 173.907 21.6866C172.643 22.1369 171.312 22.3772 169.969 22.3978C165.966 22.4622 163.26 19.7253 163.26 15.7211ZM172.064 14.1266C171.939 13.5739 171.632 13.0781 171.192 12.7171C170.752 12.3561 170.203 12.1504 169.632 12.1324C168.571 12.1324 167.401 12.9041 167.124 14.1266H172.064Z" fill="white"></path></svg></a><div class="hidden xl:flex grow ml-8 items-center relative before:absolute before:w-[1.5px] before:h-5 before:bg-[rgba(53,67,116,1)] before:left-0 pl-6"><a class="text-[rgba(235,248,255,1)] text-sm p-3" href="/library">Courses</a><a class="text-[rgba(235,248,255,1)] text-sm p-3" href="/topics">Topics</a><a class="text-[rgba(235,248,255,1)] text-sm p-3" href="/paths">Paths</a><a class="text-[rgba(235,248,255,1)] text-sm p-3" href="/forum">Forum</a></div><div class="flex items-center"><a dusk="navigation-search" class="border-[1.5px] border-[rgba(53,67,116,1)] px-2 py-2 xl:px-3.5 xl:py-2.5 rounded-full text-[rgba(132,156,241,1)] text-sm flex items-center space-x-2.5 leading-none" aria-label="Search" href="/search"><svg width="24" height="24" fill="none" viewBox="0 0 24 24" class="size-5 min-w-5"><path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M19.25 19.25L15.5 15.5M4.75 11C4.75 7.54822 7.54822 4.75 11 4.75C14.4518 4.75 17.25 7.54822 17.25 11C17.25 14.4518 14.4518 17.25 11 17.25C7.54822 17.25 4.75 14.4518 4.75 11Z"></path></svg><span class="hidden xl:inline pr-2 xl:pr-12" id="searchLabel">Search the library</span></a><div data-headlessui-state class="xl:hidden ml-5 -mr-5 z-50"><!----><div class="flex items-center drop-shadow-none"><button id="headlessui-menu-button-5945995" type="button" aria-haspopup="menu" aria-expanded="false" data-headlessui-state class="mr-6 flex items-center ui-focus-visible:ring-2 ui-focus-visible:ring-offset-2 focus:outline-none" aria-label="Menu"><!----><svg width="22" height="13" viewBox="0 0 22 13" xmlns="http://www.w3.org/2000/svg" class="w-5 h-5 stroke-[rgba(132,156,241,1)]"><path d="M1.66663 1.83337H20.3333M1.66663 11.1667H20.3333" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"></path></svg></button></div></div><!----><!----><div class="ml-8 space-x-4 hidden xl:block"><a class="text-[rgba(235,248,255,1)] text-sm p-3" href="/auth/signin?from=%2F"> Sign in </a><a class="bg-[#41FBDC] rounded-full px-3 py-1.5 text-[rgba(20, 22, 57, 1)] text-sm drop-shadow-[0px_2px_6px_rgba(26,188,151,0.5)]" href="/auth/register"> Get started </a></div></div></nav><!----><!--]--><section class="mt-6 md:mt-16"><hgroup class="text-center text-balance w-full md:w-8/12 mx-auto md:mt-40"><h1 class="text-[2.85rem] md:text-[4rem] leading-[1] font-bold bg-gradient-to-b from-[rgba(244,244,255,1)] to-[rgba(181,180,207,1)] text-transparent bg-clip-text py-2">Get ready to build something awesome.</h1><h2 class="text-lg md:text-xl font-semibold bg-gradient-to-b to-[rgba(169,198,249,1)] from-[rgba(117,137,172,1)] text-transparent bg-clip-text mt-5">We create the most practical screencasts for developers</h2></hgroup><nav class="mx-auto mt-12 md:mt-16 flex flex-wrap items-center justify-center md:space-x-8 md:h-[35px]"><!--[--><!--[--><div class="w-1/2 md:w-auto flex justify-center md:block"><a class="py-3 px-2 bg-gradient-to-b from-[rgba(132,156,241,1)] to-[rgba(76,90,139,1)] text-transparent bg-clip-text font-semibold flex items-center space-x-2.5 group" href="/library"><div class="bg-[rgba(89,89,236,0.15)] group-hover:bg-[rgba(89,89,236,0.20)] transition-all duration-200 size-[30px] rounded-full flex items-center justify-center"><svg width="24" height="24" fill="none" viewBox="0 0 24 24" class="size-[1.15rem] text-[rgba(126,126,255,1)] rotate-[140deg] group-hover:rotate-180 transition-all duration-200"><path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M10.25 6.75L4.75 12L10.25 17.25"></path><path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M19.25 12H5"></path></svg></div><span>Courses</span></a></div><!--]--><!--[--><div class="w-1/2 md:w-auto flex justify-center md:block"><a class="py-3 px-2 bg-gradient-to-b from-[rgba(132,156,241,1)] to-[rgba(76,90,139,1)] text-transparent bg-clip-text font-semibold flex items-center space-x-2.5 group" href="/topics"><div class="bg-[rgba(89,89,236,0.15)] group-hover:bg-[rgba(89,89,236,0.20)] transition-all duration-200 size-[30px] rounded-full flex items-center justify-center"><svg width="24" height="24" fill="none" viewBox="0 0 24 24" class="size-[1.15rem] text-[rgba(126,126,255,1)] rotate-[140deg] group-hover:rotate-180 transition-all duration-200"><path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M10.25 6.75L4.75 12L10.25 17.25"></path><path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M19.25 12H5"></path></svg></div><span>Topics</span></a></div><!--]--><!--[--><div class="w-1/2 md:w-auto flex justify-center md:block"><a class="py-3 px-2 bg-gradient-to-b from-[rgba(132,156,241,1)] to-[rgba(76,90,139,1)] text-transparent bg-clip-text font-semibold flex items-center space-x-2.5 group" href="/paths"><div class="bg-[rgba(89,89,236,0.15)] group-hover:bg-[rgba(89,89,236,0.20)] transition-all duration-200 size-[30px] rounded-full flex items-center justify-center"><svg width="24" height="24" fill="none" viewBox="0 0 24 24" class="size-[1.15rem] text-[rgba(126,126,255,1)] rotate-[140deg] group-hover:rotate-180 transition-all duration-200"><path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M10.25 6.75L4.75 12L10.25 17.25"></path><path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M19.25 12H5"></path></svg></div><span>Paths</span></a></div><!--]--><!--[--><div class="w-1/2 md:w-auto flex justify-center md:block"><a class="py-3 px-2 bg-gradient-to-b from-[rgba(132,156,241,1)] to-[rgba(76,90,139,1)] text-transparent bg-clip-text font-semibold flex items-center space-x-2.5 group" href="/search"><div class="bg-[rgba(89,89,236,0.15)] group-hover:bg-[rgba(89,89,236,0.20)] transition-all duration-200 size-[30px] rounded-full flex items-center justify-center"><svg width="24" height="24" fill="none" viewBox="0 0 24 24" class="size-[1.15rem] text-[rgba(126,126,255,1)] rotate-[140deg] group-hover:rotate-180 transition-all duration-200"><path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M10.25 6.75L4.75 12L10.25 17.25"></path><path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M19.25 12H5"></path></svg></div><span>Search</span></a></div><!--]--><!--[--><div class="w-1/2 md:w-auto flex justify-center md:block"><a class="py-3 px-2 bg-gradient-to-b from-[rgba(132,156,241,1)] to-[rgba(76,90,139,1)] text-transparent bg-clip-text font-semibold flex items-center space-x-2.5 group" href="/auth/register"><div class="bg-[rgba(89,89,236,0.15)] group-hover:bg-[rgba(89,89,236,0.20)] transition-all duration-200 size-[30px] rounded-full flex items-center justify-center"><svg width="24" height="24" fill="none" viewBox="0 0 24 24" class="size-[1.15rem] text-[rgba(126,126,255,1)] rotate-[140deg] group-hover:rotate-180 transition-all duration-200"><path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M10.25 6.75L4.75 12L10.25 17.25"></path><path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M19.25 12H5"></path></svg></div><span>Sign up</span></a></div><!--]--><!--[--><!----><!--]--><!--]--></nav><!----><div class="mt-28 flex items-center flex-col justify-center"><svg width="24" height="24" fill="none" viewBox="0 0 24 24" stroke-width="2" class="size-10 text-[rgba(148,162,209,0.5)]"><path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" d="M15.25 10.75L12 14.25L8.75 10.75"></path></svg><svg width="24" height="24" fill="none" viewBox="0 0 24 24" stroke-width="2" class="size-10 -mt-6 text-[rgba(112,120,176,1)]"><path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" d="M15.25 10.75L12 14.25L8.75 10.75"></path></svg></div></section><div class="space-y-28 md:space-y-48 mt-32"><div class="relative after:absolute after:bg-contain after:bg-[url(&#39;/images/blue-circle.svg&#39;)] after:-left-[250px] after:-top-[250px] after:w-[700px] after:h-[700px] after:z-[1] after:pointer-events-none"><!--[--><button aria-hidden="true" style="position:fixed;top:1;left:1;width:1;height:0;padding:0;margin:-1;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;" type="button"></button><!--[--><div role="tablist" aria-orientation="horizontal" class="space-x-6 sm:space-x-12 lg:space-x-40 flex items-center justify-between sm:justify-start"><!--[--><button id="headlessui-tabs-tab-5945996" role="tab" type="button" aria-selected="true" tabindex="0" data-headlessui-state="selected" class="text-left ui-focus-visible:ring-0 focus:outline-none group"><div class="relative before:absolute mb-5 before:transition-colors before:bg-transparent before:h-[5px] before:-bottom-5 before:rounded-full before:left-0 before:w-22 group-hover:before:bg-[rgba(67,90,210,0.5)] opacity-50 transition-opacity group-hover:opacity-100 before:!bg-[rgba(67,90,210,1)] !opacity-100"><h2 class="text-xl md:text-2xl font-bold text-[rgba(233,232,255,1)] leading-none">Latest</h2><p class="text-[rgba(148,162,209,1)] font-semibold mt-1.5 hidden md:block">Fresh from the library</p></div></button><button id="headlessui-tabs-tab-5945997" role="tab" type="button" aria-selected="false" tabindex="-1" data-headlessui-state class="text-left ui-focus-visible:ring-0 focus:outline-none group"><div class="relative before:absolute mb-5 before:transition-colors before:bg-transparent before:h-[5px] before:-bottom-5 before:rounded-full before:left-0 before:w-22 group-hover:before:bg-[rgba(67,90,210,0.5)] opacity-50 transition-opacity group-hover:opacity-100"><h2 class="text-xl md:text-2xl font-bold text-[rgba(233,232,255,1)] leading-none">Featured</h2><p class="text-[rgba(148,162,209,1)] font-semibold mt-1.5 hidden md:block">Courses we think you&#39;ll love</p></div></button><button id="headlessui-tabs-tab-5945998" role="tab" type="button" aria-selected="false" tabindex="-1" data-headlessui-state class="text-left ui-focus-visible:ring-0 focus:outline-none group"><div class="relative before:absolute mb-5 before:transition-colors before:bg-transparent before:h-[5px] before:-bottom-5 before:rounded-full before:left-0 before:w-22 group-hover:before:bg-[rgba(67,90,210,0.5)] opacity-50 transition-opacity group-hover:opacity-100"><h2 class="text-xl md:text-2xl font-bold text-[rgba(233,232,255,1)] leading-none">Trending</h2><p class="text-[rgba(148,162,209,1)] font-semibold mt-1.5 hidden md:block">Popular right now</p></div></button><!--]--></div><div><div id="headlessui-tabs-panel-5945999" role="tabpanel" tabindex="0" data-headlessui-state="selected" class="mt-12 relative"><!--[--><!--Client only rendering component placeholder--><button class="!opacity-100 !pointer-events-auto text-white absolute inset-y-0 -left-20 flex items-center opacity-0 transition-opacity pointer-events-none"><svg width="24" height="24" fill="none" viewBox="0 0 24 24" stroke-width="2" class="size-10 md:size-12 rotate-90 text-[rgba(132,156,241,1)]"><path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" d="M15.25 10.75L12 14.25L8.75 10.75"></path></svg></button><button class="text-white absolute inset-y-0 -right-2 xl:-right-14 z-20 flex items-center"><svg width="24" height="24" fill="none" viewBox="0 0 24 24" stroke-width="2" class="size-10 md:size-12 rotate-[270deg] text-[rgba(132,156,241,1)]"><path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" d="M15.25 10.75L12 14.25L8.75 10.75"></path></svg></button><!--]--></div><span aria-hidden="true" style="position:fixed;top:1;left:1;width:1;height:0;padding:0;margin:-1;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;" id="headlessui-tabs-panel-5946000" role="tabpanel" tabindex="-1" class="mt-12 relative"></span><span aria-hidden="true" style="position:fixed;top:1;left:1;width:1;height:0;padding:0;margin:-1;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;" id="headlessui-tabs-panel-5946001" role="tabpanel" tabindex="-1" class="mt-12 relative"></span></div><!--]--><!--]--></div><div class="flex flex-col items-center relative after:absolute after:z-[-1] after:w-full after:h-full after:bg-[url(&#39;/images/planet-glow.webp&#39;)] after:bg-cover after:bg-[center_bottom_-4rem] after:bg-no-repeat pb-40 h-[504px] -mx-6 md:mx-auto"><hgroup class="mx-auto text-center w-8/12"><h2 class="text-[rgba(233,232,255,1)] text-3xl md:text-4xl font-bold">Actually useful screencasts</h2><h3 class="text-[rgba(148,162,209,1)] text-lg md:text-[1.2rem] font-semibold mt-4">Skip the theory. In every course, you&#39;ll build something useful and leave with practical knowledge you can use anywhere.</h3></hgroup><a class="shrink-0 mt-14 bg-[rgba(25,140,255,1)] inline-flex items-center justify-center rounded-full font-semibold text-[rgba(235,248,255,1)] px-20 h-12 md:h-14 leading-none hover:-translate-y-[1px] hover:drop-shadow-[2px_3px_5px_rgba(25,140,255,0.5)] transition-all text-sm lg:text-base" href="/library"> Browse the library </a></div><div><div class="flex flex-wrap md:flex-nowrap items-center justify-center md:space-x-16 bg-[url(&#39;/images/paths-background.svg&#39;)] bg-no-repeat pb-16 bg-[left_top_12rem] relative after:absolute after:bg-contain after:bg-[url(&#39;/images/blue-circle.svg&#39;)] after:-left-[300px] after:-top-[300px] after:w-[900px] after:h-[900px] after:z-[1] after:pointer-events-none"><div class="shrink-0 md:-mt-20 bg-cover text-center md:text-left"><hgroup><h2 class="text-[rgba(233,232,255,1)] text-3xl md:text-4xl font-bold">Got a goal in mind?</h2><h3 class="text-[rgba(148,162,209,1)] text-lg md:text-[1.2rem] font-semibold mt-4">Master a topic with paths</h3></hgroup></div><div class="grid grid-cols-1 lg:grid-cols-2 gap-6 mt-12 md:mt-0"><!--[--><a class="bg-[rgba(20,22,57,1)] h-[360px] rounded-3xl p-9 pb-6 flex flex-col relative after:w-full after:left-0 after:absolute after:h-16 after:pointer-events-none after:bottom-6 after:bg-gradient-to-t after:from-[rgba(20,22,57,1)]" href="/paths/big-livewire-projects"><div class="bg-[rgba(27,32,74,1)] text-[rgba(148,162,209,1)] font-semibold absolute -top-1.5 -right-1.5 rounded-xl px-3.5 py-2 leading-none text-xs"> Path </div><div><div class="flex items-center space-x-3"><div class="size-[40px] bg-[rgba(34,36,81,1)] rounded-xl flex items-center justify-center"><svg width="46" height="38" viewBox="0 0 46 38" fill="none" xmlns="http://www.w3.org/2000/svg" class="size-6"><path fill-rule="evenodd" clip-rule="evenodd" d="M43.6578 34.758C42.8047 36.0477 42.1586 37.6359 40.4249 37.6359C37.5068 37.6359 37.3488 33.1359 34.4282 33.1359C31.5089 33.1359 31.667 37.6359 28.7489 37.6359C25.8309 37.6359 25.6728 33.1359 22.7523 33.1359C19.833 33.1359 19.9911 37.6359 17.0718 37.6359C14.1537 37.6359 13.9957 33.1359 11.0751 33.1359C8.15455 33.1359 8.31513 37.6359 5.39458 37.6359C4.47752 37.6359 3.83269 37.1918 3.28948 36.5821C1.12216 32.7934 -0.0121324 28.502 9.78642e-05 24.1372C9.78642e-05 10.8053 10.2973 0 22.9994 0C35.7041 0 46 10.8065 46 24.1372C46 27.9472 45.157 31.5515 43.6578 34.758Z" fill="#FB70A9"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M43.6578 34.758C42.8047 36.0477 42.1586 37.6359 40.4249 37.6359C37.5068 37.6359 37.3488 33.1359 34.4282 33.1359C31.5089 33.1359 31.667 37.6359 28.7489 37.6359C25.8309 37.6359 25.6728 33.1359 22.7523 33.1359C19.833 33.1359 19.9911 37.6359 17.0718 37.6359C14.1537 37.6359 13.9957 33.1359 11.0751 33.1359C8.15455 33.1359 8.31513 37.6359 5.39458 37.6359C4.47752 37.6359 3.83269 37.1918 3.28948 36.5821C1.12216 32.7934 -0.0121324 28.502 9.78642e-05 24.1372C9.78642e-05 10.8053 10.2973 0 22.9994 0C35.7041 0 46 10.8065 46 24.1372C46 27.9472 45.157 31.5515 43.6578 34.758Z" fill="#FB70A9"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M38.6822 37.1555C44.709 28.1894 44.8658 18.2435 39.1489 7.31775C43.5529 11.8273 46.0127 17.8842 45.9999 24.1874C45.9999 27.9836 45.128 31.5766 43.5736 34.7681C42.6892 36.0528 42.018 37.636 40.2203 37.636C39.6055 37.636 39.1087 37.4503 38.6822 37.1555Z" fill="#E24CA6"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M21.7661 30.1565C29.765 30.1565 33.1322 25.5172 33.1322 18.9284C33.1322 12.3371 28.0451 6.27271 21.7661 6.27271C15.4897 6.27271 10.4013 12.3384 10.4013 18.9272C10.4013 25.5172 13.7673 30.1565 21.7661 30.1565Z" fill="white"></path><path d="M18.7113 19.301C21.0648 19.301 22.973 17.1934 22.973 14.5965C22.973 11.9984 21.0661 9.89203 18.7113 9.89203C16.3578 9.89203 14.4497 11.9984 14.4497 14.5965C14.4497 17.1934 16.3566 19.301 18.7113 19.301Z" fill="#030776"></path><path d="M18.0026 15.6817C19.1781 15.6817 20.1328 14.7094 20.1328 13.5113C20.1328 12.3107 19.1793 11.3397 18.0013 11.3397C16.8246 11.3397 15.8699 12.3107 15.8699 13.5101C15.8699 14.7094 16.8233 15.6817 18.0026 15.6817Z" fill="white"></path></svg></div><h3 class="text-[rgba(233,232,255,1)] text-lg md:text-xl font-semibold line-clamp-2">Big Livewire Projects</h3></div><p class="text-[rgba(148,162,209,1)] text-xs line-clamp-2 mt-2 leading-normal">A collection of our biggest, most up-to-date projects in Livewire. Progress through this path to learn tips, techniques and strategies you can apply to any project — and come through the other side having built up a collection of inspiring real-world applications.</p></div><div class="relative flex items-center space-x-2 mt-3 pb-3 before:absolute before:-bottom-[10px] before:left-[9px] before:h-[2px] before:bg-gradient-to-r before:from-[rgba(147,132,241,0.3)] before:to-[rgba(147,132,241,0)] before:w-full after:absolute after:w-[8px] after:h-[8px] after:bg-[rgba(147,132,241,0.3)] after:-left-0 after:-bottom-[13px] after:rotate-45"><div class="rounded-full bg-[rgba(27,32,74,1)] h-8 px-3 flex items-center text-[rgba(148,162,209,1)] text-xs">4 courses</div><div class="rounded-full bg-[rgba(27,32,74,1)] h-8 px-3 flex items-center text-[rgba(148,162,209,1)] text-xs space-x-2"><svg width="24" height="24" fill="none" viewBox="0 0 24 24" class="size-4 mr-1"><circle cx="12" cy="12" r="7.25" stroke="currentColor" stroke-width="2"></circle><path stroke="currentColor" stroke-width="2" d="M12 8V12L14 14"></path></svg><!--[-->8 hrs<!--]--> 55 mins</div></div><div class="relative grow overflow-y-scroll mt-4 space-y-2 py-2 px-1 pb-10"><!--[--><div class="flex items-center space-x-3"><div class="text-xs font-semibold text-[rgba(148,162,209,1)] leading-none size-[30px] min-w-[30px] flex items-center justify-center rounded-full border border-[rgba(43,57,100,1)]">1</div><div class="text-xs text-[rgba(148,162,209,1)] font-medium">Build a Livewire Comment System</div></div><div class="flex items-center space-x-3"><div class="text-xs font-semibold text-[rgba(148,162,209,1)] leading-none size-[30px] min-w-[30px] flex items-center justify-center rounded-full border border-[rgba(43,57,100,1)]">2</div><div class="text-xs text-[rgba(148,162,209,1)] font-medium">Building Reactive Realtime Applications with Livewire</div></div><div class="flex items-center space-x-3"><div class="text-xs font-semibold text-[rgba(148,162,209,1)] leading-none size-[30px] min-w-[30px] flex items-center justify-center rounded-full border border-[rgba(43,57,100,1)]">3</div><div class="text-xs text-[rgba(148,162,209,1)] font-medium">Build a Trello Clone With Livewire</div></div><div class="flex items-center space-x-3"><div class="text-xs font-semibold text-[rgba(148,162,209,1)] leading-none size-[30px] min-w-[30px] flex items-center justify-center rounded-full border border-[rgba(43,57,100,1)]">4</div><div class="text-xs text-[rgba(148,162,209,1)] font-medium">Build an Appointment Booking System With Livewire</div></div><!--]--></div></a><a class="bg-[rgba(20,22,57,1)] h-[360px] rounded-3xl p-9 pb-6 flex flex-col relative after:w-full after:left-0 after:absolute after:h-16 after:pointer-events-none after:bottom-6 after:bg-gradient-to-t after:from-[rgba(20,22,57,1)]" href="/paths/learn-alpinejs"><div class="bg-[rgba(27,32,74,1)] text-[rgba(148,162,209,1)] font-semibold absolute -top-1.5 -right-1.5 rounded-xl px-3.5 py-2 leading-none text-xs"> Path </div><div><div class="flex items-center space-x-3"><div class="size-[40px] bg-[rgba(34,36,81,1)] rounded-xl flex items-center justify-center"><svg width="50" height="24" viewBox="0 0 50 24" fill="none" xmlns="http://www.w3.org/2000/svg" class="size-6"><path d="M38.8889 0L50 11.0623L38.8889 22.1248L27.7777 11.0623L38.8889 0Z" fill="#77C1D2"></path><path d="M11.1111 0L34.1459 22.9338H11.9236L0 11.0623L11.1111 0Z" fill="#2D3441"></path></svg></div><h3 class="text-[rgba(233,232,255,1)] text-lg md:text-xl font-semibold line-clamp-2">Learn Alpine.js</h3></div><p class="text-[rgba(148,162,209,1)] text-xs line-clamp-2 mt-2 leading-normal">Alpine.js a lightweight JavaScript framework with serious power. Either used on its own, sprinkled into an existing project, or paired with Livewire and Tailwind CSS to form the TALL stack — its straightforward syntax, extensibility and first-party plugins will allow you to add dynamic interfaces anywhere you need.</p></div><div class="relative flex items-center space-x-2 mt-3 pb-3 before:absolute before:-bottom-[10px] before:left-[9px] before:h-[2px] before:bg-gradient-to-r before:from-[rgba(147,132,241,0.3)] before:to-[rgba(147,132,241,0)] before:w-full after:absolute after:w-[8px] after:h-[8px] after:bg-[rgba(147,132,241,0.3)] after:-left-0 after:-bottom-[13px] after:rotate-45"><div class="rounded-full bg-[rgba(27,32,74,1)] h-8 px-3 flex items-center text-[rgba(148,162,209,1)] text-xs">4 courses</div><div class="rounded-full bg-[rgba(27,32,74,1)] h-8 px-3 flex items-center text-[rgba(148,162,209,1)] text-xs space-x-2"><svg width="24" height="24" fill="none" viewBox="0 0 24 24" class="size-4 mr-1"><circle cx="12" cy="12" r="7.25" stroke="currentColor" stroke-width="2"></circle><path stroke="currentColor" stroke-width="2" d="M12 8V12L14 14"></path></svg><!--[-->4 hrs<!--]--> 17 mins</div></div><div class="relative grow overflow-y-scroll mt-4 space-y-2 py-2 px-1 pb-10"><!--[--><div class="flex items-center space-x-3"><div class="text-xs font-semibold text-[rgba(148,162,209,1)] leading-none size-[30px] min-w-[30px] flex items-center justify-center rounded-full border border-[rgba(43,57,100,1)]">1</div><div class="text-xs text-[rgba(148,162,209,1)] font-medium">Learn Alpine.js</div></div><div class="flex items-center space-x-3"><div class="text-xs font-semibold text-[rgba(148,162,209,1)] leading-none size-[30px] min-w-[30px] flex items-center justify-center rounded-full border border-[rgba(43,57,100,1)]">2</div><div class="text-xs text-[rgba(148,162,209,1)] font-medium">Alpine Store Basics</div></div><div class="flex items-center space-x-3"><div class="text-xs font-semibold text-[rgba(148,162,209,1)] leading-none size-[30px] min-w-[30px] flex items-center justify-center rounded-full border border-[rgba(43,57,100,1)]">3</div><div class="text-xs text-[rgba(148,162,209,1)] font-medium">Build a Notes App with Alpine.js</div></div><div class="flex items-center space-x-3"><div class="text-xs font-semibold text-[rgba(148,162,209,1)] leading-none size-[30px] min-w-[30px] flex items-center justify-center rounded-full border border-[rgba(43,57,100,1)]">4</div><div class="text-xs text-[rgba(148,162,209,1)] font-medium">Meilisearch Instant Search with Alpine.js</div></div><!--]--></div></a><!--]--></div></div><div class="flex items-center justify-center"><a class="bg-[rgba(25,140,255,1)] inline-flex items-center justify-center rounded-full font-semibold text-[rgba(235,248,255,1)] px-20 h-12 md:h-14 leading-none hover:-translate-y-[1px] hover:drop-shadow-[2px_3px_5px_rgba(25,140,255,0.5)] transition-all text-sm lg:text-base" href="/paths"> Explore all paths </a></div></div><div class="!mt-60 z-[-1] relative before:absolute before:-top-96 before:w-full before:h-full before:bg-[url(&#39;/images/grid-background.svg&#39;)] before:bg-no-repeat before:bg-[center_top_-8rem] after:absolute after:-top-96 after:bg-gradient-to-b after:from-[rgba(9,13,37,1)] after:h-48 after:w-full -mx-6 md:-mx-24"><hgroup class="mx-auto text-center w-8/12"><h2 class="text-[rgba(233,232,255,1)] text-3xl md:text-4xl font-bold">You&#39;re in great company</h2><h3 class="text-[rgba(148,162,209,1)] text-lg md:text-[1.2rem] font-semibold mt-4">Thousands of developers improve their skills every day with Codecourse</h3></hgroup><div class="mt-12 md:mt-24 overflow-x-hidden flex items-center relative before:absolute before:left-0 before:h-full before:w-28 before:z-20 before:bg-gradient-to-r before:from-[rgba(8,13,39,1)] after:absolute after:right-0 after:h-full after:w-28 after:z-20 after:bg-gradient-to-r after:from-transparent after:to-[rgba(8,13,39,1)]"><!--[--><div class="animate-marquee-slow flex space-x-6"><!--[--><div class="space-y-6 w-64 md:min-w-96"><!--[--><div class="bg-[rgba(20,22,57,1)] p-8 rounded-xl"><div class="text-[rgba(233,232,255,1)] text-sm leading-relaxed">Codecourse has been an important place for me to improve and grow professionally. Thanks to Alex for providing such great content and learning resources.</div><div class="flex mt-6 space-x-4"><img src="images/testimonials/38.webp" class="size-10 rounded-full" loading="lazy"><div><div class="text-[rgba(255,255,255,1)] font-bold">Joseph Ruano</div><div class="text-[rgba(112,120,176,1)] text-xs"><a target="_blank" href="https://jruano.dev">jruano.dev</a></div></div></div></div><div class="bg-[rgba(20,22,57,1)] p-8 rounded-xl"><div class="text-[rgba(233,232,255,1)] text-sm leading-relaxed">Codecourse has been a pivotal turning point in my career as a software engineer. Thanks to Alex&#39;s courses, I successfully leveled up from a novice to someone who is now unafraid to accept any challenge. Worth every penny.</div><div class="flex mt-6 space-x-4"><img src="images/testimonials/35.webp" class="size-10 rounded-full" loading="lazy"><div><div class="text-[rgba(255,255,255,1)] font-bold">Oussama Sid</div><div class="text-[rgba(112,120,176,1)] text-xs"><a target="_blank" href="https://coderflex.com">coderflex.com</a></div></div></div></div><!--]--></div><div class="space-y-6 w-64 md:min-w-96"><!--[--><div class="bg-[rgba(20,22,57,1)] p-8 rounded-xl"><div class="text-[rgba(233,232,255,1)] text-sm leading-relaxed">I have been learning from Alex since the phpacademy days. Was ecstatic when codecourse was launched. Alex is one of the best teacher out there. Explaining complex topics effortlessly is his superpower!</div><div class="flex mt-6 space-x-4"><img src="images/testimonials/36.webp" class="size-10 rounded-full" loading="lazy"><div><div class="text-[rgba(255,255,255,1)] font-bold">Vishnu</div><div class="text-[rgba(112,120,176,1)] text-xs"><a target="_blank" href="https://vishnupadmanabhan.com">vishnupadmanabhan.com</a></div></div></div></div><div class="bg-[rgba(20,22,57,1)] p-8 rounded-xl"><div class="text-[rgba(233,232,255,1)] text-sm leading-relaxed">Codecourse&#39;s amazing collection of quality courses will keep your skills set at the cutting edge. It&#39;s the perfect must have resource for adapting fast in business environments.</div><div class="flex mt-6 space-x-4"><img src="images/testimonials/37.webp" class="size-10 rounded-full" loading="lazy"><div><div class="text-[rgba(255,255,255,1)] font-bold">Digital Workflow Systems</div><div class="text-[rgba(112,120,176,1)] text-xs"><a target="_blank" href="https://www.double-click-design.com">double-click-design.com</a></div></div></div></div><!--]--></div><div class="space-y-6 w-64 md:min-w-96"><!--[--><div class="bg-[rgba(20,22,57,1)] p-8 rounded-xl"><div class="text-[rgba(233,232,255,1)] text-sm leading-relaxed">I have been regularly using Codecourse to keep me updated about Laravel. This website has saved me a lot of my time and money as I find explanations really easy to understand. I am glad I found Codecourse early as a student. I am very grateful for setting me up for my career.</div><div class="flex mt-6 space-x-4"><img src="images/testimonials/34.webp" class="size-10 rounded-full" loading="lazy"><div><div class="text-[rgba(255,255,255,1)] font-bold">Mohamed Suhail</div><div class="text-[rgba(112,120,176,1)] text-xs"><a target="_blank" href="https://x.com/SnazzyIslander">@SnazzyIslander</a></div></div></div></div><div class="bg-[rgba(20,22,57,1)] p-8 rounded-xl"><div class="text-[rgba(233,232,255,1)] text-sm leading-relaxed">Codecourse is a brilliant learning resource. Keep up to date with Laravel and related languages. I love the practical examples that simplify complex topics.</div><div class="flex mt-6 space-x-4"><img src="images/testimonials/33.webp" class="size-10 rounded-full" loading="lazy"><div><div class="text-[rgba(255,255,255,1)] font-bold">David Carr</div><div class="text-[rgba(112,120,176,1)] text-xs"><a target="_blank" href="https://dcblog.dev">dcblog.dev</a></div></div></div></div><!--]--></div><div class="space-y-6 w-64 md:min-w-96"><!--[--><div class="bg-[rgba(20,22,57,1)] p-8 rounded-xl"><div class="text-[rgba(233,232,255,1)] text-sm leading-relaxed">I recently became a lifetime member of codecourse and this has been one of my best investments so far! The projects covered here are genuinely practical and can be applied for building real world applications.</div><div class="flex mt-6 space-x-4"><img src="images/testimonials/32.webp" class="size-10 rounded-full" loading="lazy"><div><div class="text-[rgba(255,255,255,1)] font-bold">Tapan Sharma</div><div class="text-[rgba(112,120,176,1)] text-xs"><a target="_blank" href="https://tapansharma.dev">tapansharma.dev</a></div></div></div></div><div class="bg-[rgba(20,22,57,1)] p-8 rounded-xl"><div class="text-[rgba(233,232,255,1)] text-sm leading-relaxed">Alex doesn&#39;t fear tackling big topics that are extremely valuable to any developer.</div><div class="flex mt-6 space-x-4"><img src="images/testimonials/31.webp" class="size-10 rounded-full" loading="lazy"><div><div class="text-[rgba(255,255,255,1)] font-bold">Benjamin Crozat</div><div class="text-[rgba(112,120,176,1)] text-xs"><a target="_blank" href="https://benjamincrozat.com">benjamincrozat.com</a></div></div></div></div><!--]--></div><div class="space-y-6 w-64 md:min-w-96"><!--[--><div class="bg-[rgba(20,22,57,1)] p-8 rounded-xl"><div class="text-[rgba(233,232,255,1)] text-sm leading-relaxed">Codecourse is jam-packed with useful and easy-to-follow courses. I&#39;m always learning new things from each video!</div><div class="flex mt-6 space-x-4"><img src="images/testimonials/30.webp" class="size-10 rounded-full" loading="lazy"><div><div class="text-[rgba(255,255,255,1)] font-bold">Ash Allen</div><div class="text-[rgba(112,120,176,1)] text-xs"><a target="_blank" href="https://ashallendesign.co.uk">ashallendesign.co.uk</a></div></div></div></div><div class="bg-[rgba(20,22,57,1)] p-8 rounded-xl"><div class="text-[rgba(233,232,255,1)] text-sm leading-relaxed">Codecourse has been vital in my journey to become the Web Developer I am today. Not only have the skills I&#39;ve learnt helped me start my own business, but it has also enabled me to help many other businesses start up.</div><div class="flex mt-6 space-x-4"><img src="images/testimonials/10.webp" class="size-10 rounded-full" loading="lazy"><div><div class="text-[rgba(255,255,255,1)] font-bold">Jam Ward</div><div class="text-[rgba(112,120,176,1)] text-xs"><a target="_blank" href="https://jam1e.co.uk">jam1e.co.uk</a></div></div></div></div><!--]--></div><div class="space-y-6 w-64 md:min-w-96"><!--[--><div class="bg-[rgba(20,22,57,1)] p-8 rounded-xl"><div class="text-[rgba(233,232,255,1)] text-sm leading-relaxed">I love that Codecourse tackles deeper concepts than are covered in the docs. Really helps push me as a developer. The lifetime license is a must have.</div><div class="flex mt-6 space-x-4"><img src="images/testimonials/24.webp" class="size-10 rounded-full" loading="lazy"><div><div class="text-[rgba(255,255,255,1)] font-bold">Scott Zirkel</div><div class="text-[rgba(112,120,176,1)] text-xs"><a target="_blank" href="https://scottzirkel.com">scottzirkel.com</a></div></div></div></div><div class="bg-[rgba(20,22,57,1)] p-8 rounded-xl"><div class="text-[rgba(233,232,255,1)] text-sm leading-relaxed">Thanks to Alex way back during the phpacademy era, I started programming. He is my educational hero and I owe him a lot.</div><div class="flex mt-6 space-x-4"><img src="images/testimonials/12.webp" class="size-10 rounded-full" loading="lazy"><div><div class="text-[rgba(255,255,255,1)] font-bold">Jakub Theimer</div><div class="text-[rgba(112,120,176,1)] text-xs"><a target="_blank" href="https://x.com/theimerj">@theimerj</a></div></div></div></div><!--]--></div><div class="space-y-6 w-64 md:min-w-96"><!--[--><div class="bg-[rgba(20,22,57,1)] p-8 rounded-xl"><div class="text-[rgba(233,232,255,1)] text-sm leading-relaxed">As a slow reader, Codecourse has helped me develop my skills faster than I would have imagined. The usage of great real life examples and clear voiceover makes me able to watch the series for hours straight. Without Codecourse, I would never have been where I am today.</div><div class="flex mt-6 space-x-4"><img src="images/testimonials/26.webp" class="size-10 rounded-full" loading="lazy"><div><div class="text-[rgba(255,255,255,1)] font-bold">Jesper Andersen</div><div class="text-[rgba(112,120,176,1)] text-xs"><!----></div></div></div></div><div class="bg-[rgba(20,22,57,1)] p-8 rounded-xl"><div class="text-[rgba(233,232,255,1)] text-sm leading-relaxed">Codecourse is an indispensable knowledge tool for both experienced and new developers. For me, Codecourse is a valuable companion in my development toolkit!</div><div class="flex mt-6 space-x-4"><img src="images/testimonials/28.webp" class="size-10 rounded-full" loading="lazy"><div><div class="text-[rgba(255,255,255,1)] font-bold">Steve Popoola</div><div class="text-[rgba(112,120,176,1)] text-xs"><!----></div></div></div></div><!--]--></div><div class="space-y-6 w-64 md:min-w-96"><!--[--><div class="bg-[rgba(20,22,57,1)] p-8 rounded-xl"><div class="text-[rgba(233,232,255,1)] text-sm leading-relaxed">Codecourse is what got me into web development. Diverse content, superb quality courses, and most of all excellent explanations.</div><div class="flex mt-6 space-x-4"><img src="images/testimonials/18.webp" class="size-10 rounded-full" loading="lazy"><div><div class="text-[rgba(255,255,255,1)] font-bold">Ziyo Shams</div><div class="text-[rgba(112,120,176,1)] text-xs"><a target="_blank" href="https://x.com/shamsziyo">@shamsziyo</a></div></div></div></div><div class="bg-[rgba(20,22,57,1)] p-8 rounded-xl"><div class="text-[rgba(233,232,255,1)] text-sm leading-relaxed">Codecourse is my go to for learning anything development related. Not only is the content high quality, but the subjects are varied and concise. Alex is a fantastic teacher, and always explains topics in an easy to understand way.</div><div class="flex mt-6 space-x-4"><img src="images/testimonials/02.webp" class="size-10 rounded-full" loading="lazy"><div><div class="text-[rgba(255,255,255,1)] font-bold">Steve McDougall</div><div class="text-[rgba(112,120,176,1)] text-xs"><a target="_blank" href="https://x.com/JustSteveKing">@JustSteveKing</a></div></div></div></div><!--]--></div><div class="space-y-6 w-64 md:min-w-96"><!--[--><div class="bg-[rgba(20,22,57,1)] p-8 rounded-xl"><div class="text-[rgba(233,232,255,1)] text-sm leading-relaxed">I discovered my career on Codecourse, before even being a pro member. Thank you Alex!</div><div class="flex mt-6 space-x-4"><img src="images/testimonials/04.webp" class="size-10 rounded-full" loading="lazy"><div><div class="text-[rgba(255,255,255,1)] font-bold">Bashiru Ibrahim</div><div class="text-[rgba(112,120,176,1)] text-xs"><a target="_blank" href="https://x.com/bashiru4u">@bashiru4u</a></div></div></div></div><div class="bg-[rgba(20,22,57,1)] p-8 rounded-xl"><div class="text-[rgba(233,232,255,1)] text-sm leading-relaxed">The videos are easy to understand. It&#39;s awesome!</div><div class="flex mt-6 space-x-4"><img src="images/testimonials/06.webp" class="size-10 rounded-full" loading="lazy"><div><div class="text-[rgba(255,255,255,1)] font-bold">Zeug</div><div class="text-[rgba(112,120,176,1)] text-xs"><a target="_blank" href="https://x.com/zeug">@zeug</a></div></div></div></div><!--]--></div><div class="space-y-6 w-64 md:min-w-96"><!--[--><div class="bg-[rgba(20,22,57,1)] p-8 rounded-xl"><div class="text-[rgba(233,232,255,1)] text-sm leading-relaxed">Codecourse is just so simple. I built my first Laravel app in hours thanks to Codecourse.</div><div class="flex mt-6 space-x-4"><img src="images/testimonials/08.webp" class="size-10 rounded-full" loading="lazy"><div><div class="text-[rgba(255,255,255,1)] font-bold">Duncan McClean</div><div class="text-[rgba(112,120,176,1)] text-xs"><a target="_blank" href="https://duncanmcclean.com/">duncan.mcclean.co.uk</a></div></div></div></div><div class="bg-[rgba(20,22,57,1)] p-8 rounded-xl"><div class="text-[rgba(233,232,255,1)] text-sm leading-relaxed">Good courses, better explanations! As a hobbyist or professional coder, you&#39;ll find great value. I consider myself lucky to had found Codecourse.</div><div class="flex mt-6 space-x-4"><img src="images/testimonials/21.webp" class="size-10 rounded-full" loading="lazy"><div><div class="text-[rgba(255,255,255,1)] font-bold">Aida Martínez</div><div class="text-[rgba(112,120,176,1)] text-xs"><a target="_blank" href="https://x.com/aida_41d4ma">@aida_41d4ma</a></div></div></div></div><!--]--></div><div class="space-y-6 w-64 md:min-w-96"><!--[--><div class="bg-[rgba(20,22,57,1)] p-8 rounded-xl"><div class="text-[rgba(233,232,255,1)] text-sm leading-relaxed">Great practical project examples and code walkthrough that will help you level up your developer chops.</div><div class="flex mt-6 space-x-4"><img src="images/testimonials/23.webp" class="size-10 rounded-full" loading="lazy"><div><div class="text-[rgba(255,255,255,1)] font-bold">Steven Grant</div><div class="text-[rgba(112,120,176,1)] text-xs"><a target="_blank" href="https://x.com/1stevengrant">@1stevengrant</a></div></div></div></div><div class="bg-[rgba(20,22,57,1)] p-8 rounded-xl"><div class="text-[rgba(233,232,255,1)] text-sm leading-relaxed">Codecourse is a place where you can broaden your mind with practical and beneficial web development video tutorials. Highly recommend to anyone who wants to reach at the cutting edge of the web.</div><div class="flex mt-6 space-x-4"><img src="images/testimonials/11.webp" class="size-10 rounded-full" loading="lazy"><div><div class="text-[rgba(255,255,255,1)] font-bold">Kamyab Alex</div><div class="text-[rgba(112,120,176,1)] text-xs"><a target="_blank" href="https://x.com/kamyab_alex">@kamyab_alex</a></div></div></div></div><!--]--></div><div class="space-y-6 w-64 md:min-w-96"><!--[--><div class="bg-[rgba(20,22,57,1)] p-8 rounded-xl"><div class="text-[rgba(233,232,255,1)] text-sm leading-relaxed">Codecourse is a fantastic platform. Alex has a friendly delivery style. He includes just enough detail to keep the courses comprehensive but not too slow. Thank you, Alex, for making me a better developer!</div><div class="flex mt-6 space-x-4"><img src="images/testimonials/25.webp" class="size-10 rounded-full" loading="lazy"><div><div class="text-[rgba(255,255,255,1)] font-bold">Zuzana Kunckova</div><div class="text-[rgba(112,120,176,1)] text-xs"><a target="_blank" href="https://x.com/zuzana_kunckova">@zuzana_kunckova</a></div></div></div></div><div class="bg-[rgba(20,22,57,1)] p-8 rounded-xl"><div class="text-[rgba(233,232,255,1)] text-sm leading-relaxed">Codecourse is the way to learn and keep up-to-date with the latest technologies.</div><div class="flex mt-6 space-x-4"><img src="images/testimonials/16.webp" class="size-10 rounded-full" loading="lazy"><div><div class="text-[rgba(255,255,255,1)] font-bold">Brent Robert</div><div class="text-[rgba(112,120,176,1)] text-xs"><a target="_blank" href="https://x.com/Brentr0bert">@Brentr0bert</a></div></div></div></div><!--]--></div><!--]--></div><div class="animate-marquee-repeat-slow absolute top-0 pl-6 flex space-x-6"><!--[--><div class="space-y-6 w-64 md:min-w-96"><!--[--><div class="bg-[rgba(20,22,57,1)] p-8 rounded-xl"><div class="text-[rgba(233,232,255,1)] text-sm leading-relaxed">Codecourse has been an important place for me to improve and grow professionally. Thanks to Alex for providing such great content and learning resources.</div><div class="flex mt-6 space-x-4"><img src="images/testimonials/38.webp" class="size-10 rounded-full" loading="lazy"><div><div class="text-[rgba(255,255,255,1)] font-bold">Joseph Ruano</div><div class="text-[rgba(112,120,176,1)] text-xs"><a target="_blank" href="https://jruano.dev">jruano.dev</a></div></div></div></div><div class="bg-[rgba(20,22,57,1)] p-8 rounded-xl"><div class="text-[rgba(233,232,255,1)] text-sm leading-relaxed">Codecourse has been a pivotal turning point in my career as a software engineer. Thanks to Alex&#39;s courses, I successfully leveled up from a novice to someone who is now unafraid to accept any challenge. Worth every penny.</div><div class="flex mt-6 space-x-4"><img src="images/testimonials/35.webp" class="size-10 rounded-full" loading="lazy"><div><div class="text-[rgba(255,255,255,1)] font-bold">Oussama Sid</div><div class="text-[rgba(112,120,176,1)] text-xs"><a target="_blank" href="https://coderflex.com">coderflex.com</a></div></div></div></div><!--]--></div><div class="space-y-6 w-64 md:min-w-96"><!--[--><div class="bg-[rgba(20,22,57,1)] p-8 rounded-xl"><div class="text-[rgba(233,232,255,1)] text-sm leading-relaxed">I have been learning from Alex since the phpacademy days. Was ecstatic when codecourse was launched. Alex is one of the best teacher out there. Explaining complex topics effortlessly is his superpower!</div><div class="flex mt-6 space-x-4"><img src="images/testimonials/36.webp" class="size-10 rounded-full" loading="lazy"><div><div class="text-[rgba(255,255,255,1)] font-bold">Vishnu</div><div class="text-[rgba(112,120,176,1)] text-xs"><a target="_blank" href="https://vishnupadmanabhan.com">vishnupadmanabhan.com</a></div></div></div></div><div class="bg-[rgba(20,22,57,1)] p-8 rounded-xl"><div class="text-[rgba(233,232,255,1)] text-sm leading-relaxed">Codecourse&#39;s amazing collection of quality courses will keep your skills set at the cutting edge. It&#39;s the perfect must have resource for adapting fast in business environments.</div><div class="flex mt-6 space-x-4"><img src="images/testimonials/37.webp" class="size-10 rounded-full" loading="lazy"><div><div class="text-[rgba(255,255,255,1)] font-bold">Digital Workflow Systems</div><div class="text-[rgba(112,120,176,1)] text-xs"><a target="_blank" href="https://www.double-click-design.com">double-click-design.com</a></div></div></div></div><!--]--></div><div class="space-y-6 w-64 md:min-w-96"><!--[--><div class="bg-[rgba(20,22,57,1)] p-8 rounded-xl"><div class="text-[rgba(233,232,255,1)] text-sm leading-relaxed">I have been regularly using Codecourse to keep me updated about Laravel. This website has saved me a lot of my time and money as I find explanations really easy to understand. I am glad I found Codecourse early as a student. I am very grateful for setting me up for my career.</div><div class="flex mt-6 space-x-4"><img src="images/testimonials/34.webp" class="size-10 rounded-full" loading="lazy"><div><div class="text-[rgba(255,255,255,1)] font-bold">Mohamed Suhail</div><div class="text-[rgba(112,120,176,1)] text-xs"><a target="_blank" href="https://x.com/SnazzyIslander">@SnazzyIslander</a></div></div></div></div><div class="bg-[rgba(20,22,57,1)] p-8 rounded-xl"><div class="text-[rgba(233,232,255,1)] text-sm leading-relaxed">Codecourse is a brilliant learning resource. Keep up to date with Laravel and related languages. I love the practical examples that simplify complex topics.</div><div class="flex mt-6 space-x-4"><img src="images/testimonials/33.webp" class="size-10 rounded-full" loading="lazy"><div><div class="text-[rgba(255,255,255,1)] font-bold">David Carr</div><div class="text-[rgba(112,120,176,1)] text-xs"><a target="_blank" href="https://dcblog.dev">dcblog.dev</a></div></div></div></div><!--]--></div><div class="space-y-6 w-64 md:min-w-96"><!--[--><div class="bg-[rgba(20,22,57,1)] p-8 rounded-xl"><div class="text-[rgba(233,232,255,1)] text-sm leading-relaxed">I recently became a lifetime member of codecourse and this has been one of my best investments so far! The projects covered here are genuinely practical and can be applied for building real world applications.</div><div class="flex mt-6 space-x-4"><img src="images/testimonials/32.webp" class="size-10 rounded-full" loading="lazy"><div><div class="text-[rgba(255,255,255,1)] font-bold">Tapan Sharma</div><div class="text-[rgba(112,120,176,1)] text-xs"><a target="_blank" href="https://tapansharma.dev">tapansharma.dev</a></div></div></div></div><div class="bg-[rgba(20,22,57,1)] p-8 rounded-xl"><div class="text-[rgba(233,232,255,1)] text-sm leading-relaxed">Alex doesn&#39;t fear tackling big topics that are extremely valuable to any developer.</div><div class="flex mt-6 space-x-4"><img src="images/testimonials/31.webp" class="size-10 rounded-full" loading="lazy"><div><div class="text-[rgba(255,255,255,1)] font-bold">Benjamin Crozat</div><div class="text-[rgba(112,120,176,1)] text-xs"><a target="_blank" href="https://benjamincrozat.com">benjamincrozat.com</a></div></div></div></div><!--]--></div><div class="space-y-6 w-64 md:min-w-96"><!--[--><div class="bg-[rgba(20,22,57,1)] p-8 rounded-xl"><div class="text-[rgba(233,232,255,1)] text-sm leading-relaxed">Codecourse is jam-packed with useful and easy-to-follow courses. I&#39;m always learning new things from each video!</div><div class="flex mt-6 space-x-4"><img src="images/testimonials/30.webp" class="size-10 rounded-full" loading="lazy"><div><div class="text-[rgba(255,255,255,1)] font-bold">Ash Allen</div><div class="text-[rgba(112,120,176,1)] text-xs"><a target="_blank" href="https://ashallendesign.co.uk">ashallendesign.co.uk</a></div></div></div></div><div class="bg-[rgba(20,22,57,1)] p-8 rounded-xl"><div class="text-[rgba(233,232,255,1)] text-sm leading-relaxed">Codecourse has been vital in my journey to become the Web Developer I am today. Not only have the skills I&#39;ve learnt helped me start my own business, but it has also enabled me to help many other businesses start up.</div><div class="flex mt-6 space-x-4"><img src="images/testimonials/10.webp" class="size-10 rounded-full" loading="lazy"><div><div class="text-[rgba(255,255,255,1)] font-bold">Jam Ward</div><div class="text-[rgba(112,120,176,1)] text-xs"><a target="_blank" href="https://jam1e.co.uk">jam1e.co.uk</a></div></div></div></div><!--]--></div><div class="space-y-6 w-64 md:min-w-96"><!--[--><div class="bg-[rgba(20,22,57,1)] p-8 rounded-xl"><div class="text-[rgba(233,232,255,1)] text-sm leading-relaxed">I love that Codecourse tackles deeper concepts than are covered in the docs. Really helps push me as a developer. The lifetime license is a must have.</div><div class="flex mt-6 space-x-4"><img src="images/testimonials/24.webp" class="size-10 rounded-full" loading="lazy"><div><div class="text-[rgba(255,255,255,1)] font-bold">Scott Zirkel</div><div class="text-[rgba(112,120,176,1)] text-xs"><a target="_blank" href="https://scottzirkel.com">scottzirkel.com</a></div></div></div></div><div class="bg-[rgba(20,22,57,1)] p-8 rounded-xl"><div class="text-[rgba(233,232,255,1)] text-sm leading-relaxed">Thanks to Alex way back during the phpacademy era, I started programming. He is my educational hero and I owe him a lot.</div><div class="flex mt-6 space-x-4"><img src="images/testimonials/12.webp" class="size-10 rounded-full" loading="lazy"><div><div class="text-[rgba(255,255,255,1)] font-bold">Jakub Theimer</div><div class="text-[rgba(112,120,176,1)] text-xs"><a target="_blank" href="https://x.com/theimerj">@theimerj</a></div></div></div></div><!--]--></div><div class="space-y-6 w-64 md:min-w-96"><!--[--><div class="bg-[rgba(20,22,57,1)] p-8 rounded-xl"><div class="text-[rgba(233,232,255,1)] text-sm leading-relaxed">As a slow reader, Codecourse has helped me develop my skills faster than I would have imagined. The usage of great real life examples and clear voiceover makes me able to watch the series for hours straight. Without Codecourse, I would never have been where I am today.</div><div class="flex mt-6 space-x-4"><img src="images/testimonials/26.webp" class="size-10 rounded-full" loading="lazy"><div><div class="text-[rgba(255,255,255,1)] font-bold">Jesper Andersen</div><div class="text-[rgba(112,120,176,1)] text-xs"><!----></div></div></div></div><div class="bg-[rgba(20,22,57,1)] p-8 rounded-xl"><div class="text-[rgba(233,232,255,1)] text-sm leading-relaxed">Codecourse is an indispensable knowledge tool for both experienced and new developers. For me, Codecourse is a valuable companion in my development toolkit!</div><div class="flex mt-6 space-x-4"><img src="images/testimonials/28.webp" class="size-10 rounded-full" loading="lazy"><div><div class="text-[rgba(255,255,255,1)] font-bold">Steve Popoola</div><div class="text-[rgba(112,120,176,1)] text-xs"><!----></div></div></div></div><!--]--></div><div class="space-y-6 w-64 md:min-w-96"><!--[--><div class="bg-[rgba(20,22,57,1)] p-8 rounded-xl"><div class="text-[rgba(233,232,255,1)] text-sm leading-relaxed">Codecourse is what got me into web development. Diverse content, superb quality courses, and most of all excellent explanations.</div><div class="flex mt-6 space-x-4"><img src="images/testimonials/18.webp" class="size-10 rounded-full" loading="lazy"><div><div class="text-[rgba(255,255,255,1)] font-bold">Ziyo Shams</div><div class="text-[rgba(112,120,176,1)] text-xs"><a target="_blank" href="https://x.com/shamsziyo">@shamsziyo</a></div></div></div></div><div class="bg-[rgba(20,22,57,1)] p-8 rounded-xl"><div class="text-[rgba(233,232,255,1)] text-sm leading-relaxed">Codecourse is my go to for learning anything development related. Not only is the content high quality, but the subjects are varied and concise. Alex is a fantastic teacher, and always explains topics in an easy to understand way.</div><div class="flex mt-6 space-x-4"><img src="images/testimonials/02.webp" class="size-10 rounded-full" loading="lazy"><div><div class="text-[rgba(255,255,255,1)] font-bold">Steve McDougall</div><div class="text-[rgba(112,120,176,1)] text-xs"><a target="_blank" href="https://x.com/JustSteveKing">@JustSteveKing</a></div></div></div></div><!--]--></div><div class="space-y-6 w-64 md:min-w-96"><!--[--><div class="bg-[rgba(20,22,57,1)] p-8 rounded-xl"><div class="text-[rgba(233,232,255,1)] text-sm leading-relaxed">I discovered my career on Codecourse, before even being a pro member. Thank you Alex!</div><div class="flex mt-6 space-x-4"><img src="images/testimonials/04.webp" class="size-10 rounded-full" loading="lazy"><div><div class="text-[rgba(255,255,255,1)] font-bold">Bashiru Ibrahim</div><div class="text-[rgba(112,120,176,1)] text-xs"><a target="_blank" href="https://x.com/bashiru4u">@bashiru4u</a></div></div></div></div><div class="bg-[rgba(20,22,57,1)] p-8 rounded-xl"><div class="text-[rgba(233,232,255,1)] text-sm leading-relaxed">The videos are easy to understand. It&#39;s awesome!</div><div class="flex mt-6 space-x-4"><img src="images/testimonials/06.webp" class="size-10 rounded-full" loading="lazy"><div><div class="text-[rgba(255,255,255,1)] font-bold">Zeug</div><div class="text-[rgba(112,120,176,1)] text-xs"><a target="_blank" href="https://x.com/zeug">@zeug</a></div></div></div></div><!--]--></div><div class="space-y-6 w-64 md:min-w-96"><!--[--><div class="bg-[rgba(20,22,57,1)] p-8 rounded-xl"><div class="text-[rgba(233,232,255,1)] text-sm leading-relaxed">Codecourse is just so simple. I built my first Laravel app in hours thanks to Codecourse.</div><div class="flex mt-6 space-x-4"><img src="images/testimonials/08.webp" class="size-10 rounded-full" loading="lazy"><div><div class="text-[rgba(255,255,255,1)] font-bold">Duncan McClean</div><div class="text-[rgba(112,120,176,1)] text-xs"><a target="_blank" href="https://duncanmcclean.com/">duncan.mcclean.co.uk</a></div></div></div></div><div class="bg-[rgba(20,22,57,1)] p-8 rounded-xl"><div class="text-[rgba(233,232,255,1)] text-sm leading-relaxed">Good courses, better explanations! As a hobbyist or professional coder, you&#39;ll find great value. I consider myself lucky to had found Codecourse.</div><div class="flex mt-6 space-x-4"><img src="images/testimonials/21.webp" class="size-10 rounded-full" loading="lazy"><div><div class="text-[rgba(255,255,255,1)] font-bold">Aida Martínez</div><div class="text-[rgba(112,120,176,1)] text-xs"><a target="_blank" href="https://x.com/aida_41d4ma">@aida_41d4ma</a></div></div></div></div><!--]--></div><div class="space-y-6 w-64 md:min-w-96"><!--[--><div class="bg-[rgba(20,22,57,1)] p-8 rounded-xl"><div class="text-[rgba(233,232,255,1)] text-sm leading-relaxed">Great practical project examples and code walkthrough that will help you level up your developer chops.</div><div class="flex mt-6 space-x-4"><img src="images/testimonials/23.webp" class="size-10 rounded-full" loading="lazy"><div><div class="text-[rgba(255,255,255,1)] font-bold">Steven Grant</div><div class="text-[rgba(112,120,176,1)] text-xs"><a target="_blank" href="https://x.com/1stevengrant">@1stevengrant</a></div></div></div></div><div class="bg-[rgba(20,22,57,1)] p-8 rounded-xl"><div class="text-[rgba(233,232,255,1)] text-sm leading-relaxed">Codecourse is a place where you can broaden your mind with practical and beneficial web development video tutorials. Highly recommend to anyone who wants to reach at the cutting edge of the web.</div><div class="flex mt-6 space-x-4"><img src="images/testimonials/11.webp" class="size-10 rounded-full" loading="lazy"><div><div class="text-[rgba(255,255,255,1)] font-bold">Kamyab Alex</div><div class="text-[rgba(112,120,176,1)] text-xs"><a target="_blank" href="https://x.com/kamyab_alex">@kamyab_alex</a></div></div></div></div><!--]--></div><div class="space-y-6 w-64 md:min-w-96"><!--[--><div class="bg-[rgba(20,22,57,1)] p-8 rounded-xl"><div class="text-[rgba(233,232,255,1)] text-sm leading-relaxed">Codecourse is a fantastic platform. Alex has a friendly delivery style. He includes just enough detail to keep the courses comprehensive but not too slow. Thank you, Alex, for making me a better developer!</div><div class="flex mt-6 space-x-4"><img src="images/testimonials/25.webp" class="size-10 rounded-full" loading="lazy"><div><div class="text-[rgba(255,255,255,1)] font-bold">Zuzana Kunckova</div><div class="text-[rgba(112,120,176,1)] text-xs"><a target="_blank" href="https://x.com/zuzana_kunckova">@zuzana_kunckova</a></div></div></div></div><div class="bg-[rgba(20,22,57,1)] p-8 rounded-xl"><div class="text-[rgba(233,232,255,1)] text-sm leading-relaxed">Codecourse is the way to learn and keep up-to-date with the latest technologies.</div><div class="flex mt-6 space-x-4"><img src="images/testimonials/16.webp" class="size-10 rounded-full" loading="lazy"><div><div class="text-[rgba(255,255,255,1)] font-bold">Brent Robert</div><div class="text-[rgba(112,120,176,1)] text-xs"><a target="_blank" href="https://x.com/Brentr0bert">@Brentr0bert</a></div></div></div></div><!--]--></div><!--]--></div><!--]--></div></div><div><hgroup class="mx-auto text-center md:w-8/12"><h2 class="text-[rgba(233,232,255,1)] text-3xl md:text-4xl font-bold">Start your journey</h2><h3 class="text-[rgba(148,162,209,1)] text-lg md:text-[1.2rem] font-semibold mt-4">Choose a topic</h3></hgroup><div class="flex items-center flex-wrap sm:-mx-4 mt-12 justify-center"><!--[--><a class="block w-full sm:w-auto bg-[rgba(20,22,57,1)] py-8 px-10 rounded-3xl mb-4 sm:m-4 min-w-64" href="/library/laravel"><div class="after:absolute after:h-[1.5px] after:w-full after:bottom-0 after:left-0 after:bg-gradient-to-r after:from-[rgba(53,67,116,0)] after:via-[rgba(53,67,116,1)] after:to-[rgba(53,67,116,0)] relative w-full flex items-center justify-center pb-6 space-x-4"><div class="size-[65px] bg-[rgba(34,36,81,1)] rounded-xl flex items-center justify-center"><svg width="45" height="47" viewBox="0 0 45 47" fill="none" xmlns="http://www.w3.org/2000/svg" class="size-10"><path d="M44.4753 10.6142C44.4916 10.6767 44.5 10.7411 44.5 10.8059V20.8767C44.5 21.1399 44.3642 21.3829 44.1437 21.5137L35.9836 26.3805V36.0262C35.9836 36.1553 35.9509 36.2821 35.8887 36.3939C35.8265 36.5058 35.737 36.5987 35.6292 36.6634L18.595 46.8206C18.556 46.8433 18.5135 46.8579 18.4709 46.8738C18.4549 46.8791 18.44 46.8893 18.4231 46.8939C18.304 46.9264 18.1789 46.9264 18.0598 46.8939C18.0402 46.8886 18.0225 46.8773 18.0039 46.87C17.9649 46.8553 17.9242 46.8425 17.887 46.8206L0.856297 36.6632C0.748074 36.5989 0.658149 36.5061 0.595594 36.3943C0.533038 36.2824 0.500065 36.1555 0.5 36.0262V5.81378C0.5 5.74755 0.508937 5.68328 0.52475 5.62097C0.530078 5.59978 0.542453 5.58056 0.549672 5.55937C0.562906 5.52092 0.575453 5.48139 0.594875 5.44561C0.608109 5.42175 0.627531 5.40253 0.643516 5.38045C0.663969 5.35107 0.682531 5.32081 0.706422 5.295C0.726875 5.27399 0.753516 5.25832 0.776547 5.23998C0.802328 5.21791 0.825188 5.19405 0.854406 5.1766H0.855266L9.37098 0.098113C9.47882 0.0338319 9.60106 0 9.72548 0C9.84989 0 9.97213 0.0338319 10.08 0.098113L18.5957 5.1766H18.5974C18.6258 5.19512 18.6498 5.21791 18.6754 5.23909C18.6985 5.25743 18.7243 5.27399 18.7445 5.29428C18.7695 5.32081 18.7872 5.35125 18.8083 5.38045C18.8234 5.40253 18.8439 5.42175 18.8563 5.44561C18.8765 5.48228 18.888 5.52092 18.9023 5.55955C18.9094 5.58056 18.9217 5.59978 18.9271 5.62186C18.9434 5.68435 18.9518 5.74897 18.952 5.81378V24.6839L26.048 20.4516V10.805C26.048 10.7409 26.057 10.6756 26.0729 10.6142C26.0791 10.5921 26.0906 10.5729 26.0977 10.5519C26.112 10.5132 26.1243 10.4735 26.1437 10.4379C26.157 10.4141 26.1764 10.3949 26.1917 10.3728C26.2128 10.3434 26.2305 10.3131 26.2553 10.2873C26.2759 10.2663 26.3015 10.2506 26.3246 10.2323C26.3512 10.2102 26.3742 10.1864 26.4026 10.1689H26.4035L34.92 5.09044C35.0278 5.02607 35.1501 4.99219 35.2745 4.99219C35.399 4.99219 35.5212 5.02607 35.629 5.09044L44.1447 10.1689C44.1748 10.1873 44.1978 10.2102 44.2245 10.2312C44.2465 10.2498 44.2723 10.2663 44.2927 10.2864C44.3175 10.3131 44.3352 10.3434 44.3563 10.3728C44.3725 10.3949 44.3919 10.4141 44.4044 10.4379C44.4247 10.4735 44.4362 10.5132 44.4503 10.5519C44.4584 10.5729 44.4699 10.5921 44.4753 10.6142ZM43.0805 20.4518V12.0772L40.1003 13.8542L35.9834 16.3095V24.6841L43.0813 20.4518H43.0805ZM34.5648 35.6013V27.2208L30.515 29.6166L18.9511 36.453V44.9119L34.5648 35.6009V35.6013ZM1.91952 7.08491V35.6013L17.5314 44.9112V36.4539L9.37562 31.6727L9.37305 31.6709L9.36961 31.6691C9.34211 31.6526 9.31891 31.6287 9.2933 31.6086C9.27095 31.5901 9.24534 31.5755 9.22592 31.5552L9.2242 31.5525C9.20117 31.5295 9.18519 31.5011 9.16577 31.4754C9.14789 31.4505 9.12675 31.4295 9.11248 31.4038L9.11162 31.401C9.09564 31.3736 9.08584 31.3405 9.07433 31.3093C9.06281 31.2817 9.04786 31.2559 9.04064 31.2267V31.2258C9.03188 31.1909 9.03016 31.1541 9.02655 31.1183C9.02311 31.0909 9.01589 31.0633 9.01589 31.0357V11.3174L4.89966 8.86094L1.91952 7.08598V7.08491ZM9.72642 1.58324L2.63108 5.81378L9.7247 10.0441L16.819 5.81271L9.7247 1.58324H9.72642ZM13.4162 27.9848L17.5323 25.5305V7.08491L14.5525 8.86201L10.4352 11.3172V29.7626L13.4162 27.9848ZM35.2744 6.57557L28.1801 10.8059L35.2744 15.0365L42.3679 10.805L35.2744 6.57557ZM34.5646 16.3095L30.4477 13.8542L27.4677 12.0772V20.4518L31.5838 22.9063L34.5648 24.6841V16.3095H34.5646ZM18.2404 35.1818L28.6462 29.0284L33.8479 25.9535L26.7587 21.7258L18.5965 26.5931L11.1575 31.0293L18.2404 35.1818Z" fill="#FF2D20"></path></svg></div><h2 class="font-bold text-[rgba(255,255,255,1)] text-2xl leading-none">Laravel</h2></div><div class="flex flex-col items-center justify-center text-center mt-4 space-y-1"><div class="text-[rgba(112,120,176,1)] font-medium text-sm"><span class="text-[rgba(233,232,255,1)] font-medium text-sm">225</span> courses </div><div class="text-[rgba(112,120,176,1)] font-medium text-sm"><span class="text-[rgba(233,232,255,1)] font-medium">3117</span> episodes </div></div></a><a class="block w-full sm:w-auto bg-[rgba(20,22,57,1)] py-8 px-10 rounded-3xl mb-4 sm:m-4 min-w-64" href="/library/laravel-livewire"><div class="after:absolute after:h-[1.5px] after:w-full after:bottom-0 after:left-0 after:bg-gradient-to-r after:from-[rgba(53,67,116,0)] after:via-[rgba(53,67,116,1)] after:to-[rgba(53,67,116,0)] relative w-full flex items-center justify-center pb-6 space-x-4"><div class="size-[65px] bg-[rgba(34,36,81,1)] rounded-xl flex items-center justify-center"><svg width="46" height="38" viewBox="0 0 46 38" fill="none" xmlns="http://www.w3.org/2000/svg" class="size-10"><path fill-rule="evenodd" clip-rule="evenodd" d="M43.6578 34.758C42.8047 36.0477 42.1586 37.6359 40.4249 37.6359C37.5068 37.6359 37.3488 33.1359 34.4282 33.1359C31.5089 33.1359 31.667 37.6359 28.7489 37.6359C25.8309 37.6359 25.6728 33.1359 22.7523 33.1359C19.833 33.1359 19.9911 37.6359 17.0718 37.6359C14.1537 37.6359 13.9957 33.1359 11.0751 33.1359C8.15455 33.1359 8.31513 37.6359 5.39458 37.6359C4.47752 37.6359 3.83269 37.1918 3.28948 36.5821C1.12216 32.7934 -0.0121324 28.502 9.78642e-05 24.1372C9.78642e-05 10.8053 10.2973 0 22.9994 0C35.7041 0 46 10.8065 46 24.1372C46 27.9472 45.157 31.5515 43.6578 34.758Z" fill="#FB70A9"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M43.6578 34.758C42.8047 36.0477 42.1586 37.6359 40.4249 37.6359C37.5068 37.6359 37.3488 33.1359 34.4282 33.1359C31.5089 33.1359 31.667 37.6359 28.7489 37.6359C25.8309 37.6359 25.6728 33.1359 22.7523 33.1359C19.833 33.1359 19.9911 37.6359 17.0718 37.6359C14.1537 37.6359 13.9957 33.1359 11.0751 33.1359C8.15455 33.1359 8.31513 37.6359 5.39458 37.6359C4.47752 37.6359 3.83269 37.1918 3.28948 36.5821C1.12216 32.7934 -0.0121324 28.502 9.78642e-05 24.1372C9.78642e-05 10.8053 10.2973 0 22.9994 0C35.7041 0 46 10.8065 46 24.1372C46 27.9472 45.157 31.5515 43.6578 34.758Z" fill="#FB70A9"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M38.6822 37.1555C44.709 28.1894 44.8658 18.2435 39.1489 7.31775C43.5529 11.8273 46.0127 17.8842 45.9999 24.1874C45.9999 27.9836 45.128 31.5766 43.5736 34.7681C42.6892 36.0528 42.018 37.636 40.2203 37.636C39.6055 37.636 39.1087 37.4503 38.6822 37.1555Z" fill="#E24CA6"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M21.7661 30.1565C29.765 30.1565 33.1322 25.5172 33.1322 18.9284C33.1322 12.3371 28.0451 6.27271 21.7661 6.27271C15.4897 6.27271 10.4013 12.3384 10.4013 18.9272C10.4013 25.5172 13.7673 30.1565 21.7661 30.1565Z" fill="white"></path><path d="M18.7113 19.301C21.0648 19.301 22.973 17.1934 22.973 14.5965C22.973 11.9984 21.0661 9.89203 18.7113 9.89203C16.3578 9.89203 14.4497 11.9984 14.4497 14.5965C14.4497 17.1934 16.3566 19.301 18.7113 19.301Z" fill="#030776"></path><path d="M18.0026 15.6817C19.1781 15.6817 20.1328 14.7094 20.1328 13.5113C20.1328 12.3107 19.1793 11.3397 18.0013 11.3397C16.8246 11.3397 15.8699 12.3107 15.8699 13.5101C15.8699 14.7094 16.8233 15.6817 18.0026 15.6817Z" fill="white"></path></svg></div><h2 class="font-bold text-[rgba(255,255,255,1)] text-2xl leading-none">Livewire</h2></div><div class="flex flex-col items-center justify-center text-center mt-4 space-y-1"><div class="text-[rgba(112,120,176,1)] font-medium text-sm"><span class="text-[rgba(233,232,255,1)] font-medium text-sm">34</span> courses </div><div class="text-[rgba(112,120,176,1)] font-medium text-sm"><span class="text-[rgba(233,232,255,1)] font-medium">552</span> episodes </div></div></a><a class="block w-full sm:w-auto bg-[rgba(20,22,57,1)] py-8 px-10 rounded-3xl mb-4 sm:m-4 min-w-64" href="/library/vue-js"><div class="after:absolute after:h-[1.5px] after:w-full after:bottom-0 after:left-0 after:bg-gradient-to-r after:from-[rgba(53,67,116,0)] after:via-[rgba(53,67,116,1)] after:to-[rgba(53,67,116,0)] relative w-full flex items-center justify-center pb-6 space-x-4"><div class="size-[65px] bg-[rgba(34,36,81,1)] rounded-xl flex items-center justify-center"><svg width="42" height="35" viewBox="0 0 42 35" fill="none" xmlns="http://www.w3.org/2000/svg" class="size-10"><g clip-path="url(#clip0_439_473)"><path d="M33.6 0H42L21 34.9683L0 0H16.065L21 8.1086L25.83 0H33.6Z" fill="#41B883"></path><path d="M0 0L21 34.9683L42 0H33.6L21 20.981L8.295 0H0Z" fill="#41B883"></path><path d="M8.29501 0L21 21.0824L33.6 0H25.83L21 8.1086L16.065 0H8.29501Z" fill="#35495E"></path></g><defs><clipPath id="clip0_439_473"><rect width="42" height="35" fill="white"></rect></clipPath></defs></svg></div><h2 class="font-bold text-[rgba(255,255,255,1)] text-2xl leading-none">Vue.js</h2></div><div class="flex flex-col items-center justify-center text-center mt-4 space-y-1"><div class="text-[rgba(112,120,176,1)] font-medium text-sm"><span class="text-[rgba(233,232,255,1)] font-medium text-sm">67</span> courses </div><div class="text-[rgba(112,120,176,1)] font-medium text-sm"><span class="text-[rgba(233,232,255,1)] font-medium">1100</span> episodes </div></div></a><a class="block w-full sm:w-auto bg-[rgba(20,22,57,1)] py-8 px-10 rounded-3xl mb-4 sm:m-4 min-w-64" href="/library/inertia"><div class="after:absolute after:h-[1.5px] after:w-full after:bottom-0 after:left-0 after:bg-gradient-to-r after:from-[rgba(53,67,116,0)] after:via-[rgba(53,67,116,1)] after:to-[rgba(53,67,116,0)] relative w-full flex items-center justify-center pb-6 space-x-4"><div class="size-[65px] bg-[rgba(34,36,81,1)] rounded-xl flex items-center justify-center"><svg width="44" height="44" viewBox="0 0 44 44" fill="none" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" class="size-10"><rect width="44" height="44" rx="5" fill="url(#pattern0_439_512)"></rect><defs><pattern id="pattern0_439_512" patternContentUnits="objectBoundingBox" width="1" height="1"><use xlink:href="#image0_439_512" transform="scale(0.005)"></use></pattern><image id="image0_439_512" width="200" height="200" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAIAAAAiOjnJAAAOlUlEQVR4Ae2d228T1xbG+z8CCcfmmqS5EJzYjsMttuMkJXcgzoVcKLScSpWAPlXte9+rnqOqtFKFEgKUhNlzccwJAWwPPtqz57LHNiWMK61J+NCnaFQJCam/rL322mut77OlI4qsxSPK4tEGWjiq2DqmLDiaP6b41KLMtyj5GrUqc7bYXCvXjVZ2/bina8cZV8TTbITZirLZKJuRNH2CyZo6yVxNnmRcp2xNnGJcp7nGZZ1hV8+orr44q7oaO6uOtdkabVO52m2NtKtcHVw5V5+rw52esp1qtstTpkvNdNtKd6tcPVq6RxuSdOWcJutyrybrUq926byti+c1rpitCzHtQkwbjGmDfVwpWf3agF/Jfi0Zl6Un4pYSesJRPKHbSupxS/1JvVYDet/7FUvpsj6TqVo6ogAswRbAqqUqqfe/n6q+AR9VsZQOsBCxeNxCxMJRyE9DHIVKHjmWSLCQYyF5HxOZO5L3mvwdOdakuBLiVmhdD3ErtCsOKDeIogPKDU41C3Us1LGcahbKDSg3oNwQ9dUapk94ZfcpUXZH5b1PS/nL7gP9GnIs5Fh40rGeC30Phcf4QyHeCt3nQrwV4hHaTrPwCM0fdvAIjRwL3Q2icwZtM2ibqWvJQj8W+rHQNsN7/dDo57b7odyAcgPKDSg3dKg5tCZL/Q5yXzI6SL33nC/Oqig3oNxgv+24kxR40vHmKfCkI2Z1MKXjDurIIzqXezW0zaBthg+BYfxLTrPQNuOlWcixkGMhx8LAKqZ0MKWDSWiM2KO7gZ+GKDdgd4MiNoJgKQiWgvh2zqC7Ad0N6G5Ad4NvkxG6G9DdgO4GdDegu0FqbcB+LDaOjX5inV/cW+eH/VgYWMWqSHcTKSrvqLyj8o7KOyrvqLxjazLWcYvTEOu467dFovKOyjsq76i8o/IubCngTGFZVKDn3XY9wRojWJ64JihywzvmCr2Gd8wV2uYUWGOERj+sMcIaIxXuX77+PrfugHIDyg0oN6DcgHIDyg2SFybKDSg3WD6rWGMk9fqh3ADrXlj3whMantC8Cg8DAZg0waRJGNm7FvaovKPy7nW+Y8QeI/YYsVfTaPRzC+7uByrvqLyj8o7K+6GrvC/+S/njpz1lvSTrxXrpw9oovXiPtjdK+9TWeumbMWPyVHCwrse1R7++3XpcrtHzx2WuzYD6a7PM9eQD2nhUms4abv0dy219y23XOpj2tFwl+vNm79392Z1mLE+W08Zu0ST651cLesVlC2D5wMq3KLRsmWb1x1svm/HSIWdrKsPjFsCqBUuwtf7zG6rf+3dm9Ye1ImfrNNe4rP3tbqBly9ArUxkDYDUAK9+iLEQUeraCgjXaptKzlTUu4Umn4ZPOQkTZ+IU0bt0qBotYo20qZytr7L4ky7d43HLYunhe44phKYizFGQhqqxTsxXgKBRgjbaHhS2ApeQdpOyPVmWemq3v14oeW/vLsVywyNnStcpkxgBYDcCao2bLNKvfrzpsfTxYYWBrQrCFo9CLW85+rPkoI8y3PLYCgTVinYmv6PItXatwtgBWPVhzrWzhBHv8X7JcnrO1VmxmVeRyziBmK2uzdSEGLx0nYgkDgcWTTNkoUdW3TLP67fSO6MQK1o91e6JQIXtWqCrblWyKXwwBlpL3gzXXyta6NP052f+c16/MO7mCy1aARr97N4uVCtWvRvXRn6V0EmC1NADrRitb7SZla9djKwBYuQ6VnK0hiy2M2DcYsQ8JW8HACglbAKsBWNePs9UezdiiOxN3zTsjhcBg5TrU+yvEZ+KVpIbW5MatyeRs3ZbYCmDde2+VmK2hFGfLs7Dv01JwsRcu9rRs7e2aX+YMEbcCgDXcqdKytfW8PJQCWK2soV/hCumZ6LIVDCybLbIjvbr1vDyWMbyghYglItY1ay/IyjnN2Ca7xAu2AoM13KnemSkQ1iBUVvHYAlgyWNcibLWXmK1bOaMZZ4o7s4W9XbIeG48tgFUDVhjYujtZEGzJ3Q2j7Sqf/WpXRzq4cq7qts0sXzVo2RpN60jeWT1Y5GxVytXvbhbHrC4/zla7rX2Cle1SadliSmU0ow/4gxYcVm2H1ZVejT0hS4YrFc5WsIiVtZaCkLM14mcLYHnWvfmzbPPhW6oHuUql+kCw9fERS7C1Ml7Ye0WWbzGlIrMFsDywZiNs7kwI2AoKFj8TQ8MWwPKBxdmijlv3bxZFmrX/HEtErGyXmulSlyco45ailHNpnm8BrFqwZqMhYGuJsxUMrEw3NVsvOFsAqwFYs1F2gzxuLRUDgyXYek2XbykvysMZPRnXJGEHqbOD9EYbe/I7ZS5/T7D1oTqWew6KozDTrQqtTBZe75Hl8nVsASwHrJko42z9Qc1WULDS3WqY2AJYElgzUZbvULW/6Opb5eqXVwt/X3l/X8TiRjrd6lf5HZMsbFWfPi1fSIkDEWD5wZqJspV+rcDI3qp3X5rLw8bfPOn8PVjpHu3BVy8J2fr94dvBAS0ZB1h1YE2f4GztkLJ102Wr7q3wg2CFgy2A1QgszlZc21Ep45bNViCwhnq07+4Sx63UgMVWQk84sndxJ/T4J26EGQq2goIVFrYcqhIJHWB5S96J2SqaS8NGM57QtHHrt9/eDg4iYkXZjKXpEx5Y/ExMUJ6J/yuaixJb2U51PznWUI/mipatzSdlly1ELB9YUyc5W0WNLN+S2QoA1pVz2nf/psy3Np+UMxkDR6GPKtdsfGUgFGwFA+vKOe3rpSJhDWJrm7OFiOVjy/XSIWdr9WohMFiCrTevqdrPqlvb5aG0w9YnfisUyVZ4wFobP9hgpd2gBbC8ozB5wI/CRRyFR2036IVj/INvSpZFYYQZnothsKPwAWmxFMk7yg3/fAaGcoNN1UzUl7kTF0hfmjdzB7hA+vAhCqROdVQGi56qYSN3oJ90Ul7ZHXUsO2LxBoeD/Aj94GvKoujvD9/iEZrNSuFKRCzyliy0zfQN6PWKOf714uOzpSOKrMUjimvXK3+ExLqXnCo0+tUjJf7LAQaLvDX59sQBbk1+9gytyRE2KyQ1+uXbiRveBVWBe96/mqNseH/2rHxx0J0AQwepA9aNswd7/Gt5AuNf4cuxDsHAKuGCkLqhQgxTRPiVkH59A0bsk3q/UKPLoJvLH6TknZyqB8sHeCkIUyo5a1EWdjf4djdgjVEzr4PyiiyA5YHFF6/9RjlQ3+TiNb7Uj24RiEwV1hjZVF2LMKyK/KdilVhGiojF2aJdyo3ltodzYJWWqr1d8+7UAV/HncE67uO167jJqYKBAJ/VOWQ979zyZItsPLB5y5Pb07A80eVSVii6G2DS1Ey2DpMmbv1V7/4FW7kmqYKtXAOwaKl6vWseeCPMQRhhWuFKjljkVMG69xDux4LZeDMn4KM/S0NJDWbjtWbjIaHq6hk1mNn4vZvUVtBJ7UIMYLX6wFrr0vTnZMuPX78y7+QKV8+oQgHAIqcqbVEFsARVtov94kmmbJSaOQWa+bumWf12eselKkDEuj1RqJD9UlSV7Uo2pV2M8XAFsDywiKmqVL+dLoyfYYHBCglVAEvJtyh5+xxU5qNs4z9vmok3zfxd06x+v1ocP80Cg7WcNV69JNv/r2uViYxxMcbDFcDywJqPKuu/hICqoGAtZ41dcqrO21QBLBssWqreubHqNAsWscipmswYF89rXIhY/BC0tEAaq96Z1R9uWSegoOrjIxYtVYZemcoalwRVAMujKqJs0J2AgqoJF6mPj1ghoQpgKfNOoMq3KAsRZf1nsryKU7VWnDjNAoO1nDZ2i2TZuhurLp3XAJYH1loHo6fqFKcqGFj0VGWMS70cKYDFqRIRa62DaU/JyoimWf1xrThxinEFAisMVF3u1QCWs+LWAouWqjd77+7P7kwKqgKBRUtVQa9MZ43LvRrAcqg6xsPVYkT546c9Zb0k68V66cPaKL14j7Y3SvvU1nrpmzFj8hQLDNb1uPbo17dbj8s1ev64zLUZUH9tlrmefEAbj0ouVQDLB5acvNt3Q6fyLtpH5X6s69Y8xbXjjCviyd5hZO1uqN/oJ/s0uQYCUyfZpJBFVWCwxtpUodE2lavdVjMu9hnLt5e79/ZoacmhaahHu3LOJxGo3J84Ch22nBzLLTfwD4AFsJaOKCFfFSmHK9eZQsQtRKxUn8bVr4kBaPcnJqHt0xBHIZJ35xAUxic4Crs8L8xMl5rptsUTLORY8rJk9zskW5NxFKJtxn6ERvKOWyFf+I7kHeUGsb7BXg/p7olM6v2HZlXkrLM1WTiNy146NUaYqGPZV0LcCkV19LqojqJAalVK3dIoboW4FarDnbaCGWHKxXeAZfus+uxVrbdCPOlknYoDyg0HyaQJ5QaUG1BuQIFUcpZDuQHlBpQbGNpmBvuwH6tuPxb6seQr4ZVzvGtUFvqxnKIDHqGdK2G2S8WtELdCe0vW2Fm7fXRMtI+ig1R+z8GTTjM972hNFpl7vAapQ2Yrh7dCzBVaaRZyLORYKdtGIBQGApjSEddD+UqI8S/nSoi3wk6vLxm3QkQsb3EyboWH0KQJA6sokNo9MwtiMkf+ieQdyTuSd7E7OcCe91yHautzr8tvuFNFo1/obOVwK8St0DsHcRTmELGkuR05XMVSOm6FuBXqiYTO74NCh8y6F7dC3Aq90xDDFO6IDpJ3HIXBvXRGOtQR90rYoSLH6kOOxT0pPn7POzb6+QbtJYxkpMQ3IhYilp6IW0rwtF0IyTuTRwsxTIFhCtsIE8tth6T9thimULB4jS9ORvL+/jQLORZyLORY2I8FLx1eLEXbDNpm0DaDthm31oC3Ql+tAQYCgzG+uGFQ+Aa4P2EggN0NKDeg3KCi3ICtycFt5TBijxF7nm/hSQc5Fp504Fd4VHEtdNwPPOkgx0KOhRzLZ1kIv0L4FWJV5DHe+Y6ed/S8u62k6G5AdwO6G9DdgO4GdDdgd4N8GmISGpPQmISOortBg0kTTJo+aZOm/wP1yZTeR8gn0QAAAABJRU5ErkJggg=="></image></defs></svg></div><h2 class="font-bold text-[rgba(255,255,255,1)] text-2xl leading-none">Inertia</h2></div><div class="flex flex-col items-center justify-center text-center mt-4 space-y-1"><div class="text-[rgba(112,120,176,1)] font-medium text-sm"><span class="text-[rgba(233,232,255,1)] font-medium text-sm">16</span> courses </div><div class="text-[rgba(112,120,176,1)] font-medium text-sm"><span class="text-[rgba(233,232,255,1)] font-medium">329</span> episodes </div></div></a><a class="block w-full sm:w-auto bg-[rgba(20,22,57,1)] py-8 px-10 rounded-3xl mb-4 sm:m-4 min-w-64" href="/library/php"><div class="after:absolute after:h-[1.5px] after:w-full after:bottom-0 after:left-0 after:bg-gradient-to-r after:from-[rgba(53,67,116,0)] after:via-[rgba(53,67,116,1)] after:to-[rgba(53,67,116,0)] relative w-full flex items-center justify-center pb-6 space-x-4"><div class="size-[65px] bg-[rgba(34,36,81,1)] rounded-xl flex items-center justify-center"><svg width="56" height="56" viewBox="0 0 56 56" fill="none" xmlns="http://www.w3.org/2000/svg" class="size-10"><path d="M13.3 24.1342C13.8396 24.0664 14.3873 24.1062 14.9115 24.2512C15.4356 24.3963 15.9258 24.6438 16.3538 24.9795C16.6299 25.4048 16.8059 25.8872 16.8687 26.3904C16.9314 26.8936 16.8792 27.4044 16.716 27.8845C16.5728 29.0664 16.0012 30.1547 15.1095 30.9435C14.0341 31.6362 12.7629 31.9611 11.487 31.8692H9.037L10.542 24.15L13.3 24.1342ZM3.5 39.6847H7.525L8.47875 34.7847H11.921C13.1892 34.817 14.4547 34.6535 15.673 34.3C16.6736 33.9697 17.5882 33.4209 18.3505 32.6935C19.669 31.5079 20.5576 29.919 20.8775 28.175C21.13 27.307 21.1745 26.3917 21.0073 25.5032C20.8401 24.6148 20.4658 23.7783 19.915 23.0615C19.2509 22.4034 18.4511 21.8981 17.5715 21.581C16.692 21.264 15.7538 21.1427 14.8225 21.2257H7.09975L3.5 39.6847ZM23.8298 16.3152H27.825L26.8573 21.2152H30.4115C32.0444 21.0443 33.685 21.4592 35.0403 22.386C35.4887 22.8958 35.7952 23.5144 35.9291 24.18C36.063 24.8456 36.0196 25.5347 35.8032 26.1782L34.1337 34.769H30.0912L31.6803 26.6017C31.7908 26.2901 31.8303 25.9577 31.7957 25.6289C31.7612 25.3001 31.6536 24.9831 31.4808 24.7012C30.9015 24.2856 30.1855 24.1066 29.4787 24.2007H26.2885L24.2323 34.7777H20.2283L23.8298 16.3152ZM44.6932 24.1342C45.2329 24.0664 45.7806 24.1062 46.3047 24.2512C46.8289 24.3963 47.3191 24.6438 47.747 24.9795C48.0231 25.4048 48.1992 25.8872 48.2619 26.3904C48.3247 26.8936 48.2725 27.4044 48.1092 27.8845C47.9661 29.0664 47.3945 30.1547 46.5028 30.9435C45.4254 31.6377 44.1515 31.9626 42.8733 31.8692H40.425L41.9265 24.1412L44.6932 24.1342ZM34.8932 39.6847H38.9183L39.872 34.7847H43.316C44.5865 34.8178 45.8545 34.6543 47.075 34.3C48.0756 33.9697 48.9902 33.4209 49.7525 32.6935C51.0677 31.5066 51.9532 29.9179 52.2707 28.175C52.5233 27.307 52.5677 26.3917 52.4005 25.5032C52.2333 24.6148 51.8591 23.7783 51.3083 23.0615C50.6439 22.4045 49.8442 21.9004 48.965 21.5843C48.0857 21.2681 47.1481 21.1476 46.2175 21.231H38.4825L34.8932 39.6847Z" fill="#9DABE8"></path></svg></div><h2 class="font-bold text-[rgba(255,255,255,1)] text-2xl leading-none">PHP</h2></div><div class="flex flex-col items-center justify-center text-center mt-4 space-y-1"><div class="text-[rgba(112,120,176,1)] font-medium text-sm"><span class="text-[rgba(233,232,255,1)] font-medium text-sm">137</span> courses </div><div class="text-[rgba(112,120,176,1)] font-medium text-sm"><span class="text-[rgba(233,232,255,1)] font-medium">1382</span> episodes </div></div></a><a class="block w-full sm:w-auto bg-[rgba(20,22,57,1)] py-8 px-10 rounded-3xl mb-4 sm:m-4 min-w-64" href="/library/alpine-js"><div class="after:absolute after:h-[1.5px] after:w-full after:bottom-0 after:left-0 after:bg-gradient-to-r after:from-[rgba(53,67,116,0)] after:via-[rgba(53,67,116,1)] after:to-[rgba(53,67,116,0)] relative w-full flex items-center justify-center pb-6 space-x-4"><div class="size-[65px] bg-[rgba(34,36,81,1)] rounded-xl flex items-center justify-center"><svg width="50" height="24" viewBox="0 0 50 24" fill="none" xmlns="http://www.w3.org/2000/svg" class="size-10"><path d="M38.8889 0L50 11.0623L38.8889 22.1248L27.7777 11.0623L38.8889 0Z" fill="#77C1D2"></path><path d="M11.1111 0L34.1459 22.9338H11.9236L0 11.0623L11.1111 0Z" fill="#2D3441"></path></svg></div><h2 class="font-bold text-[rgba(255,255,255,1)] text-2xl leading-none">Alpine.js</h2></div><div class="flex flex-col items-center justify-center text-center mt-4 space-y-1"><div class="text-[rgba(112,120,176,1)] font-medium text-sm"><span class="text-[rgba(233,232,255,1)] font-medium text-sm">14</span> courses </div><div class="text-[rgba(112,120,176,1)] font-medium text-sm"><span class="text-[rgba(233,232,255,1)] font-medium">112</span> episodes </div></div></a><!--]--></div></div></div></div><div class="bg-gradient-to-b from-[rgba(19,38,111,0)] to-[rgba(19,38,111,0.6)] mt-16 md:mt-36"><footer class="xl:mt-24 max-w-7xl mx-auto px-6"><div class="flex items-center justify-between border-b border-b-[rgba(112,120,176,0.3)] py-5"><a class="block" aria-label="Go to homepage" href="/"><svg width="176" height="31" viewBox="0 0 176 31" fill="none" xmlns="http://www.w3.org/2000/svg" class="w-[176px] h-[31px]"><path d="M29.0227 8.34161C28.7806 9.60382 28.1064 10.7422 27.1157 11.5609C26.1249 12.3796 24.8799 12.8274 23.5947 12.8272C23.2924 12.8255 22.9909 12.7993 22.6929 12.7487C23.0248 13.6281 23.1945 14.5604 23.1938 15.5003C23.1938 19.8077 19.7017 23.2994 15.3944 23.2994C14.37 23.3008 13.3554 23.0997 12.409 22.7077C11.4626 22.3157 10.6029 21.7405 9.87952 21.0152L4.50903 26.3854C5.93692 27.8171 7.63367 28.9523 9.50174 29.7262C11.3698 30.4999 13.3724 30.897 15.3944 30.8944C23.8967 30.8944 30.7888 24.002 30.7888 15.5C30.7916 13.0057 30.1853 10.5484 29.0227 8.34161Z" fill="#57CAFD"></path><path d="M15.3944 0.105604C6.89237 0.105604 8.63538e-06 6.99768 8.63538e-06 15.5C-0.00263902 17.9942 0.603589 20.4513 1.76605 22.6581C2.00808 21.3958 2.68249 20.2574 3.67326 19.4387C4.66403 18.62 5.90916 18.1722 7.19442 18.1725C7.49657 18.1743 7.79804 18.2006 8.09592 18.2513C7.7643 17.3719 7.59467 16.4398 7.5953 15.5C7.5953 11.1926 11.087 7.70087 15.3944 7.70087C16.4187 7.69958 17.4332 7.90071 18.3796 8.2927C19.326 8.68469 20.1856 9.25986 20.909 9.98511L26.2801 4.61431C24.8521 3.18274 23.1553 2.04745 21.2871 1.2737C19.419 0.499948 17.4164 0.102979 15.3944 0.105604Z" fill="#04A4FD"></path><path d="M26.2801 4.61434C24.1418 2.47821 20.7889 1.59827 18.2485 1.59827C14.7303 1.59827 7.59558 3.84122 7.59558 15.5C7.59529 11.1927 11.0873 7.69937 15.3944 7.69937C16.4188 7.69829 17.4334 7.89966 18.3798 8.29191C19.3262 8.68419 20.1857 9.25962 20.909 9.98513C21.6212 10.6974 22.5872 11.0975 23.5944 11.0976C24.6017 11.0976 25.5677 10.6975 26.2799 9.98529C26.9922 9.27307 27.3922 8.30709 27.3922 7.29985C27.3925 6.29259 26.9922 5.32658 26.2801 4.61434Z" fill="#008FE8"></path><path d="M4.5091 26.3854C6.64492 28.5202 9.99873 29.4005 12.5391 29.4005C16.0576 29.4005 23.192 27.1574 23.192 15.4988C23.192 19.8061 19.7 23.2979 15.3926 23.2979C14.3682 23.2992 13.3537 23.0981 12.4072 22.7061C11.4608 22.3141 10.6012 21.739 9.87774 21.0137C9.16294 20.3137 8.20078 19.9241 7.20035 19.9295C6.19993 19.9349 5.24205 20.3349 4.53483 21.0425C3.82764 21.7501 3.42823 22.7082 3.42338 23.7086C3.41857 24.7091 3.80874 25.671 4.5091 26.3854Z" fill="#58BAEE"></path><path d="M40.7399 15.6265C40.7399 11.6316 43.8456 8.79078 47.6756 8.79078C49.1618 8.77938 50.6134 9.23701 51.8199 10.0975C52.0402 10.252 52.2199 10.4567 52.3439 10.6943C52.4678 10.932 52.5323 11.1958 52.532 11.4633C52.5281 11.7806 52.4352 12.0905 52.2636 12.3584C52.092 12.6262 51.8486 12.8415 51.5607 12.98C51.2726 13.1185 50.9515 13.1748 50.6331 13.1426C50.3147 13.1104 50.0116 12.9909 49.7576 12.7976C49.1611 12.343 48.4282 12.0992 47.6756 12.1048C45.9317 12.1048 44.518 13.5679 44.518 15.6265C44.518 17.6851 45.9317 19.1443 47.6756 19.1443C48.4287 19.1484 49.1616 18.9027 49.7576 18.4462C50.0616 18.2207 50.431 18.099 50.8108 18.0992C51.1723 18.0954 51.5255 18.2058 51.8197 18.4144C52.1136 18.623 52.3331 18.919 52.446 19.2594C52.5589 19.5999 52.5597 19.9671 52.4481 20.308C52.3365 20.6489 52.1184 20.9457 51.8252 21.1555C50.6171 22.017 49.1637 22.4747 47.6756 22.4622C43.8456 22.4622 40.7399 19.6175 40.7399 15.6265ZM53.7109 15.6265C53.7109 11.6316 56.8167 8.79078 60.6466 8.79078C64.4765 8.79078 67.5838 11.6355 67.5838 15.6265C67.5838 19.6175 64.4778 22.4622 60.6466 22.4622C56.8154 22.4622 53.7109 19.6175 53.7109 15.6265ZM63.8055 15.6265C63.8055 13.5731 62.3918 12.11 60.6466 12.11C58.9014 12.11 57.489 13.5679 57.489 15.6265C57.489 17.6851 58.9027 19.1443 60.6466 19.1443C62.3905 19.1443 63.8055 17.6759 63.8055 15.6265ZM82.4724 4.57106V20.468C82.4766 20.9241 82.31 21.3655 82.0048 21.7068C81.6995 22.048 81.2772 22.2647 80.8198 22.3148C80.3624 22.3649 79.9027 22.2448 79.5296 21.9779C79.1564 21.711 78.8964 21.3163 78.8004 20.8703C77.737 21.8932 76.3128 22.4644 74.831 22.4622C71.4827 22.4622 68.7693 19.6175 68.7693 15.6265C68.7693 11.6355 71.4827 8.79078 74.831 8.79078C76.2894 8.78954 77.6925 9.34395 78.7499 10.3393V4.57106C78.7499 4.08173 78.9459 3.61245 79.2951 3.26646C79.644 2.92046 80.1175 2.72607 80.6111 2.72607C81.1048 2.72607 81.5782 2.92046 81.9272 3.26646C82.2764 3.61245 82.4724 4.08173 82.4724 4.57106ZM78.8638 15.6265C78.8638 13.5731 77.4488 12.11 75.7049 12.11C73.9613 12.11 72.5476 13.5679 72.5476 15.6265C72.5476 17.6851 73.9613 19.1443 75.7049 19.1443C77.4488 19.1443 78.8638 17.6759 78.8638 15.6265ZM84.0518 15.7211C84.0518 11.6697 86.9057 8.7816 90.4172 8.7816C94.1956 8.7816 96.7921 11.8419 96.7921 15.6502C96.79 16.0553 96.6258 16.4431 96.3358 16.7284C96.0455 17.0138 95.6532 17.1735 95.2445 17.1724H87.9083C88.2915 18.3752 89.2251 19.0904 90.7541 19.0904C91.6956 19.0879 92.6282 18.9095 93.5032 18.5645C93.7595 18.4658 94.0358 18.4302 94.309 18.4608C94.5821 18.4913 94.8437 18.5871 95.0713 18.7399C95.299 18.8927 95.4858 19.0979 95.6155 19.338C95.7455 19.5781 95.8147 19.8459 95.8174 20.1183C95.8166 20.4628 95.7084 20.7986 95.5071 21.0794C95.3061 21.3603 95.0219 21.5724 94.6942 21.6866C93.4293 22.1369 92.098 22.3772 90.7541 22.3978C86.757 22.4622 84.0518 19.7253 84.0518 15.7211ZM92.8574 14.1266C92.7322 13.5738 92.4251 13.078 91.9846 12.717C91.5443 12.356 90.9951 12.1504 90.4238 12.1324C89.363 12.1324 88.1933 12.9041 87.9175 14.1266H92.8574ZM97.8689 15.6265C97.8689 11.6316 100.975 8.79078 104.805 8.79078C106.291 8.77957 107.742 9.23719 108.949 10.0975C109.169 10.252 109.349 10.4567 109.473 10.6943C109.597 10.932 109.661 11.1958 109.661 11.4633C109.66 11.7832 109.569 12.0964 109.398 12.3675C109.226 12.6385 108.982 12.8564 108.691 12.9964C108.401 13.1363 108.077 13.1928 107.756 13.1593C107.436 13.1257 107.131 13.0036 106.876 12.8068C106.281 12.3531 105.551 12.1093 104.801 12.114C103.057 12.114 101.643 13.5771 101.643 15.6304C101.643 17.6838 103.057 19.1482 104.801 19.1482C105.551 19.1529 106.281 18.9091 106.876 18.4554C107.181 18.2301 107.55 18.1084 107.93 18.1084C108.292 18.1046 108.645 18.215 108.939 18.4236C109.233 18.6322 109.453 18.9282 109.566 19.2686C109.679 19.6091 109.679 19.9763 109.568 20.3172C109.456 20.6581 109.238 20.955 108.945 21.1647C107.738 22.0209 106.288 22.4753 104.805 22.4622C100.975 22.4622 97.8689 19.6175 97.8689 15.6265ZM110.84 15.6265C110.84 11.6316 113.946 8.79078 117.776 8.79078C121.605 8.79078 124.713 11.6355 124.713 15.6265C124.713 19.6175 121.607 22.4622 117.776 22.4622C113.944 22.4622 110.84 19.6175 110.84 15.6265ZM120.934 15.6265C120.934 13.5731 119.521 12.11 117.776 12.11C116.03 12.11 114.618 13.5679 114.618 15.6265C114.618 17.6851 116.032 19.1443 117.776 19.1443C119.519 19.1443 120.934 17.6759 120.934 15.6265ZM138.925 10.7468V20.4904C138.922 20.9475 138.745 21.3867 138.43 21.7204C138.115 22.0542 137.684 22.2579 137.224 22.2911C136.764 22.3242 136.308 22.1844 135.948 21.8994C135.587 21.6144 135.348 21.2052 135.278 20.7533C134.364 21.8246 132.996 22.4622 131.254 22.4622C128.182 22.4622 126.179 20.4904 126.179 17.0725V10.7468C126.179 10.265 126.372 9.80294 126.716 9.46224C127.06 9.12153 127.526 8.93014 128.012 8.93014C128.498 8.93014 128.965 9.12153 129.308 9.46224C129.652 9.80294 129.845 10.265 129.845 10.7468V16.452C129.845 18.1136 131.086 19.139 132.524 19.139C134.046 19.139 135.26 17.948 135.26 16.3416V10.7468C135.26 10.265 135.453 9.80294 135.796 9.46224C136.14 9.12153 136.606 8.93014 137.092 8.93014C137.578 8.93014 138.045 9.12153 138.388 9.46224C138.732 9.80294 138.925 10.265 138.925 10.7468ZM150.289 10.5812C150.286 11.0608 150.092 11.5199 149.748 11.8576C149.405 12.1952 148.94 12.3839 148.456 12.3822C145.763 12.3822 144.452 13.5166 144.452 17.0344V20.4904C144.445 20.9686 144.249 21.4249 143.906 21.7615C143.563 22.0981 143.101 22.2883 142.618 22.2913C142.379 22.2923 142.141 22.2466 141.919 22.1566C141.698 22.0667 141.496 21.9343 141.326 21.7671C141.156 21.5999 141.02 21.401 140.927 21.182C140.835 20.9629 140.787 20.7279 140.786 20.4904V10.7468C140.789 10.2897 140.966 9.85049 141.281 9.51676C141.596 9.18306 142.027 8.97933 142.487 8.94614C142.947 8.91299 143.402 9.05285 143.763 9.33785C144.124 9.62284 144.363 10.032 144.433 10.484C145.348 9.41126 146.715 8.77502 148.456 8.77502C148.696 8.77396 148.934 8.81991 149.156 8.91017C149.378 9.00046 149.58 9.1333 149.751 9.30108C149.921 9.46887 150.056 9.66831 150.148 9.88799C150.241 10.1077 150.288 10.3432 150.289 10.5812ZM156.467 22.4346C154.782 22.4464 153.225 22.0836 151.897 21.3225C151.557 21.1244 151.307 20.8044 151.198 20.4286C151.09 20.0527 151.131 19.6498 151.313 19.3033C151.496 18.9567 151.806 18.6931 152.179 18.5668C152.553 18.4405 152.961 18.4614 153.319 18.625C154.247 19.0404 155.361 19.3927 156.446 19.4045C157.531 19.4164 158.247 19.1127 158.268 18.4725C158.293 16.4823 151.196 17.5799 151.278 12.9277C151.323 10.3801 153.497 8.7277 156.767 8.78423C158.267 8.8092 159.504 9.19303 160.723 9.77802C161.042 9.92965 161.298 10.1851 161.45 10.5018C161.601 10.8185 161.638 11.1771 161.555 11.5178C161.472 11.8584 161.273 12.1604 160.992 12.3733C160.712 12.5861 160.365 12.6969 160.012 12.6871C159.8 12.6847 159.592 12.64 159.398 12.5557C158.329 12.0772 157.289 11.8143 156.571 11.8274C155.613 11.8393 154.979 12.2994 154.979 12.8791C154.917 14.8167 162.044 13.6678 161.96 18.3726C161.916 20.8085 159.971 22.4096 156.473 22.4333L156.467 22.4346ZM163.26 15.7211C163.26 11.6697 166.112 8.7816 169.625 8.7816C173.402 8.7816 176 11.8419 176 15.6502C175.998 16.0557 175.833 16.4439 175.543 16.7294C175.252 17.0148 174.859 17.1742 174.45 17.1724H167.122C167.506 18.3752 168.44 19.0904 169.969 19.0904C170.91 19.0879 171.842 18.9094 172.716 18.5645C172.973 18.4659 173.249 18.4303 173.522 18.4609C173.796 18.4914 174.057 18.5872 174.285 18.74C174.513 18.8927 174.7 19.0979 174.83 19.338C174.96 19.5781 175.029 19.8458 175.032 20.1183C175.031 20.4629 174.923 20.7988 174.721 21.0797C174.52 21.3606 174.235 21.5726 173.907 21.6866C172.643 22.1369 171.312 22.3772 169.969 22.3978C165.966 22.4622 163.26 19.7253 163.26 15.7211ZM172.064 14.1266C171.939 13.5739 171.632 13.0781 171.192 12.7171C170.752 12.3561 170.203 12.1504 169.632 12.1324C168.571 12.1324 167.401 12.9041 167.124 14.1266H172.064Z" fill="white"></path></svg></a><div class="space-x-1 md:space-x-3 flex items-center lg:-mb-2"><a href="https://x.com/teamcodecourse" target="_blank" class="p-1" aria-label="X (Twitter)"><svg width="20" height="19" viewBox="0 0 20 19" xmlns="http://www.w3.org/2000/svg" class="h-5 w-5 fill-[rgba(233,232,255,1)]"><g clip-path="url(#clip0_213_245)"><path d="M15.7508 0.912781H18.8175L12.1175 8.1882L20 18.0864H13.8283L8.995 12.0824L3.46333 18.0864H0.395L7.56167 10.3043L0 0.913572H6.32833L10.6975 6.40141L15.7508 0.912781ZM14.675 16.3432H16.3742L5.405 2.56499H3.58167L14.675 16.3432Z"></path></g><defs><clipPath id="clip0_213_245"><rect width="20" height="19" fill="white"></rect></clipPath></defs></svg></a><a href="https://bsky.app/profile/codecourse.com" target="_blank" class="p-1" aria-label="X (Twitter)"><svg width="568" height="501" viewBox="0 0 568 501" fill="none" xmlns="http://www.w3.org/2000/svg" class="h-5 w-5 fill-[rgba(233,232,255,1)]"><path d="M123.121 33.6637C188.241 82.5526 258.281 181.681 284 234.873C309.719 181.681 379.759 82.5526 444.879 33.6637C491.866 -1.61183 568 -28.9064 568 57.9464C568 75.2916 558.055 203.659 552.222 224.501C531.947 296.954 458.067 315.434 392.347 304.249C507.222 323.8 536.444 388.56 473.333 453.32C353.473 576.312 301.061 422.461 287.631 383.039C285.169 375.812 284.017 372.431 284 375.306C283.983 372.431 282.831 375.812 280.369 383.039C266.939 422.461 214.527 576.312 94.6667 453.32C31.5556 388.56 60.7778 323.8 175.653 304.249C109.933 315.434 36.0535 296.954 15.7778 224.501C9.94525 203.659 0 75.2916 0 57.9464C0 -28.9064 76.1345 -1.61183 123.121 33.6637Z"></path></svg></a><a href="https://www.facebook.com/teamcodecourse" target="_blank" class="p-1" aria-label="Facebook"><svg width="21" height="21" viewBox="0 0 21 21" xmlns="http://www.w3.org/2000/svg" class="h-5 w-5 fill-[rgba(233,232,255,1)]"><path d="M10.4997 0.125C4.77051 0.125 0.0830078 4.80208 0.0830078 10.5625C0.0830078 15.7708 3.89551 20.0937 8.87467 20.875V13.5833H6.22884V10.5625H8.87467V8.26042C8.87467 5.64583 10.4268 4.20833 12.8122 4.20833C13.9476 4.20833 15.1351 4.40625 15.1351 4.40625V6.97917H13.8226C12.5309 6.97917 12.1247 7.78125 12.1247 8.60417V10.5625H15.0205L14.5518 13.5833H12.1247V20.875C14.5793 20.4873 16.8145 19.2349 18.4267 17.3438C20.0389 15.4527 20.9219 13.0475 20.9163 10.5625C20.9163 4.80208 16.2288 0.125 10.4997 0.125Z"></path></svg></a><a href="https://www.youtube.com/codecourse" target="_blank" class="p-1" aria-label="YouTube"><svg viewBox="0 0 32 32" version="1.1" xmlns="http://www.w3.org/2000/svg" class="size-7 fill-[rgba(233,232,255,1)]"><path d="M12.932 20.459v-8.917l7.839 4.459zM30.368 8.735c-0.354-1.301-1.354-2.307-2.625-2.663l-0.027-0.006c-3.193-0.406-6.886-0.638-10.634-0.638-0.381 0-0.761 0.002-1.14 0.007l0.058-0.001c-0.322-0.004-0.701-0.007-1.082-0.007-3.748 0-7.443 0.232-11.070 0.681l0.434-0.044c-1.297 0.363-2.297 1.368-2.644 2.643l-0.006 0.026c-0.4 2.109-0.628 4.536-0.628 7.016 0 0.088 0 0.176 0.001 0.263l-0-0.014c-0 0.074-0.001 0.162-0.001 0.25 0 2.48 0.229 4.906 0.666 7.259l-0.038-0.244c0.354 1.301 1.354 2.307 2.625 2.663l0.027 0.006c3.193 0.406 6.886 0.638 10.634 0.638 0.38 0 0.76-0.002 1.14-0.007l-0.058 0.001c0.322 0.004 0.702 0.007 1.082 0.007 3.749 0 7.443-0.232 11.070-0.681l-0.434 0.044c1.298-0.362 2.298-1.368 2.646-2.643l0.006-0.026c0.399-2.109 0.627-4.536 0.627-7.015 0-0.088-0-0.176-0.001-0.263l0 0.013c0-0.074 0.001-0.162 0.001-0.25 0-2.48-0.229-4.906-0.666-7.259l0.038 0.244z"></path></svg></a></div></div><div class="flex flex-wrap justify-between border-b border-b-[rgba(112,120,176,0.3)] space-y-6 lg:space-y-0 space-x-0 lg:space-x-6"><div class="grow max-w-sm mt-8"><div class="text-xl font-semibold text-[rgba(233,232,255,1)]">Join the newsletter</div><form class="mt-5 flex items-center space-x-3"><input type="email" class="bg-[rgba(14,20,53,1)] text-[rgba(233,232,255,1)] border border-[rgba(112,120,176,0.3)] rounded-xl placeholder:text-[rgba(148,162,209,1)] text-sm h-10 w-full px-4" placeholder="Your email address" required><button class="bg-[rgba(0,255,255,1)] text-[rgba(7,3,27,1)] h-9 px-4 rounded-xl text-sm font-medium drop-shadow-[2px_6px_6px_rgba(0,255,255,0.2)]">Join</button></form><p class="text-[rgba(112,120,176,1)] text-xs font-light mt-2">No spam, just occasional updates.</p></div><div class="grid grid-cols-2 md:grid-cols-3 gap-12 md:gap-16 w-full lg:w-auto py-8"><div class="space-y-4"><h5 class="text-[rgba(148,162,209,1)] text-sm font-medium !mb-5 leading-none">Learn</h5><a class="block text-[rgba(233,232,255,1)] leading-none font-medium whitespace-nowrap" href="/library"> Courses </a><a class="block text-[rgba(233,232,255,1)] leading-none font-medium whitespace-nowrap" href="/paths"> Paths </a><a class="block text-[rgba(233,232,255,1)] leading-none font-medium whitespace-nowrap" href="/snippets"> Snippets </a><a class="block text-[rgba(233,232,255,1)] leading-none font-medium whitespace-nowrap" href="/topics"> Topics </a><a class="block text-[rgba(233,232,255,1)] leading-none font-medium whitespace-nowrap" href="/articles"> Articles </a><a class="block text-[rgba(233,232,255,1)] leading-none font-medium whitespace-nowrap" href="/search"> Search </a></div><div class="space-y-4"><h5 class="text-[rgba(148,162,209,1)] text-sm font-medium !mb-5 leading-none">Get help</h5><a class="block text-[rgba(233,232,255,1)] leading-none font-medium whitespace-nowrap" href="/forum"> Forum </a><a class="block text-[rgba(233,232,255,1)] leading-none font-medium whitespace-nowrap" href="/contact?from=%2F"> Contact us </a></div><div class="space-y-4"><h5 class="text-[rgba(148,162,209,1)] text-sm font-medium !mb-5 leading-none">Join</h5><a class="block text-[rgba(233,232,255,1)] leading-none font-medium whitespace-nowrap" href="/pro"> Pricing </a><a class="block text-[rgba(233,232,255,1)] leading-none font-medium whitespace-nowrap" href="/testimonials"> Testimonials </a></div></div></div><div class="flex flex-wrap items-baseline justify-between py-5"><div class="space-x-3 md:space-x-8 mb-4 mr-6 flex items-center flex-wrap"><a class="text-[rgba(112,120,176,1)] text-sm" href="/privacy">Privacy</a><a class="text-[rgba(112,120,176,1)] text-sm text-nowrap" href="/terms">Terms</a><a target="_blank" href="https://status.codecourse.com" class="text-[rgba(112,120,176,1)] text-sm">Status</a><a class="text-[rgba(112,120,176,1)] text-sm" href="/articles/what-codecourse-uses">Uses</a></div><p class="text-[rgba(112,120,176,1)] text-sm"> © 2024 Codecourse Ltd. All Rights Reserved. Made in the UK. </p></div></footer></div><!--Client only rendering component placeholder--></div><!--]--></div> </body> </html>

Pages: 1 2 3 4 5 6 7 8 9 10