Screencasts that focus on building real apps. If you're looking to learn Laravel, Livewire, Vue, Inertia and more, we've got you covered.
Build a drop-in comment system with Livewire that instantly works for any model. 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. Once you’re done, you can drop a single Livewire comments component wherever you need it — and comments will instantly be enabled.
Let’s learn how wire:stream can help us stream ChatGPT responses as they arrive, by building a chat interface with Livewire. Each message we send and receive will be shown in chat history. It even remembers the conversation context. Sure, there are a ton of ChatGPT wrappers out there, but by the end of this course, you’ll have wire:stream in your toolkit for future projects.
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. 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. 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). 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. Phew. We’ve got a lot to learn — let’s build a booking system with Livewire!
Let’s skip the database and build the ability to like any model in Laravel, using Redis. Traditionally you’d reach for the database for this kind of thing, but as you load more models and start performing checks within relationships — things begin to slow down. With a key-value store like Redis, tracking users who have liked comments (or anything) keeps everything ridiculously fast.
Easily add drag and drop sorting functionality to your Livewire components with an Alpine directive, powered by Sortable.js. We’ll start with a list of ordered items, activate drag and drop sorting, and then feed the new order back to Livewire to instantly update the database. Once you’re done, you’ll be able to reuse this functionality in any of your Livewire components.
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. 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. 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). 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. Phew. We’ve got a lot to learn — let’s build a booking system with Inertia!
If you need to log unique views in Laravel, you might reach for a database table to track IP addresses or another unique piece of data. Let's take a look at speeding things up both in performance and complexity by using Redis and the HyperLogLog probabilistic data structure. Once we're done, we'll set up a period command to sync views back to the database for easy ordering, and then create a trait to share functionality between other models.
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. 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. You’ll learn: - How to launch modals in Livewire - How to use Cropper.js with Alpine - How to resize images on the backend with the spatie/image package - How to pass data between Livewire components
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. 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. 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). To finish up, we’ll build a simple UI with Alpine.js, with 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. Phew. We’ve got a lot to learn — let’s build a booking system with Laravel!
Join thousands of developers improving their skills every day
Looking for student or non profit discounts? Contact us.
Here's what some of our awesome members are saying
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!
Zuzana Kunckova
I love that Codecourse tackles larger concepts, such as multi-tenant/multi-database setups, or ADR in both Slim & Laravel. Really helps push me as a developer.
Scott Zirkel
Codecourse is what got me into web development. Diverse content, superb quality courses, and most of all excellent explanations.
Ziyo Shams
Codecourse has allowed me to approach complex problems in a much cleaner way because Alex has always been a big advocate of simplicity.
Abdul Haseeb
I love Codecourse because it has a lot of practical step-by-step projects. The teaching, video and content quality are one of the best I've ever seen. It helped me so much and improved my web development skills to a whole new level.
Davor Minchorov
Great practical project examples and code walkthrough that will help you level up your developer chops.
Steven Grant
Codecourse is just so simple. I built my first Laravel app in hours thanks to Codecourse.
Duncan McClean
Codecourse is the way to learn and keep up-to-date with the latest technologies.
Brent Robert
I'm a full-stack developer and founder of Codecourse, nice to meet you!
If you're like me, you learn best by building real stuff, and that's exactly what we do here. I don't create unforgettable boring screencasts, we'll sit down together and learn from practical examples you can use right away.
Don't just take my word for it though, thousands of premium members are keeping their skills sharp, right here.
Ready to join?
Say hello on Twitter