Laravel 5.2 From Scratch

Each year, the Laracasts "Laravel From Scratch" series is refreshed to reflect the latest iteration of the framework. This is the 2016 edition, which uses version 5.2 of the framework.

Are you hoping to level up your toolset? You've come to the right place. This series will take you from installing Laravel, all the way up to mastering the essentials of the framework.

Start Series

Share this series on:

  • 01

    Episode 1 Run Time 5:01

    Initial Setup Free

    So you want to level up with Laravel? Excellent choice (high five). The first step, of course, is to install Laravel on our machine. We'll do that installing Composer, pulling in Laravel's helpful installer utility, and then running laravel new project to generate the project.
  • 02

    Episode 2 Run Time 6:17

    Your First View and Route Free

    The "hello world" for frameworks is to figure out how to process a given URI, and display the appropriate HTML on the page. In this lesson, you'll learn how to create routes, and load views. It's all very simple and natural, as you'll find.
  • 03

    Episode 3 Run Time 6:35

    View Data and Blade Free

    You'll frequently need to pass data to your views. While figuring out how to accomplish this, you'll also get your first peek at Laravel's templating engine, called Blade.
  • 04

    Episode 4 Run Time 4:34

    Routing to Controllers Free

    Using route closures is very useful for small projects that don't require too much functionality. However, you'll likely find that, for most projects, you'll want to route directly to controllers. Let me show you how to do that.
  • 05

    Episode 5 Run Time 4:17

    Layout Files Free

    To reduce duplication, Laravel's templating engine, Blade, provides what we call "layout files." Within these files, we can define the wrapping HTML, which nests the content from each of your views.
  • 06

    Episode 6 Run Time 9:07

    How to Manage Your CSS and JS Free

    When it comes to including your assets (CSS and JavaScript files), you can either create directories within your public folder, or you can leverage Laravel Elixir. With the latter, you can easily make use of Sass, Less, Browserify, or any number of useful tools!

    Though it was not referenced in this video, make sure that you install Gulp globally first: npm install --global gulp.

  • 07

    Episode 7 Run Time 21:31

    Fetching Data Free

    We've arrived at the fun part. You'll first learn how to create migrations to build up your database tables. Next, we'll use the query builder and Eloquent to fetch data, and render it in the view.
  • 08

    Episode 8 Run Time 16:18

    Defining Relationships With Eloquent Free

    Eloquent provides a beautiful mechanism for referencing relationships. For example, a comment belongs to a post, a card can have many notes, and an article can both belong to and have many tags. Let's demonstrate the basic workflow for creating these relationships today.
  • 09

    Episode 9 Run Time 18:10

    Forms Free

    Let's review the basic workflow for submitting a form, fetching the data that was sent through, and then creating a record in the database.
  • 10

    Episode 10 Run Time 21:24

    Updating Records and Eager Loading Free

    You'll of course need to modify existing records in the database. Let's review the process of creating an "edit" page to handle this very task. Along the way, we'll also get a chance to review PATCH requests and the concept of eager loading and the problems it solves.
  • 11

    Episode 11 Run Time 18:06

    Validation and More Free

    The core topic for this lesson is validation, however, as you'll find, we'll also tackle a number of little things: group middleware, CSRF, old input, and more.
  • 12

    Episode 12 Run Time 1:36

    Your Questions Answered Free

    On February 26th, 2016, I made a request (in the video above) for all viewers to ask any questions they had about the series thus far. Did something not quite click? Ask away! On February 29th, I answered these questions below.

    Before you continue on, take some time to review the comments below. You might pick up a tip or two.

  • 13

    Episode 13 Run Time 6:29

    Authenticate Your Users Free

    Most applications will require some form of authentication. With Laravel, it genuinely could not be simpler. Let's setup registration, authentication, and password resets in a matter of minutes.
  • 14

    Episode 14 Run Time 13:16

    Understanding Middleware Free

    Think of middleware as layers of an onion. To get through to the core of your application, a request must first pass through these various layers. Perhaps one layer determines if the application is in maintenance mode. Another layer, or middleware, might verify that the user is signed in as an administrator.
  • 15

    Episode 15 Run Time 13:09

    Flashing to the Session Free

    You get to learn about session handling today. Specifically, we'll figure out how to flash notification messages to the session. This way, we can send quick alerts to the user that only exist for a single request.
  • 16

    Episode 16 Run Time 18:00

    Automatic Resolution and the Service Container Free

    It's vital that you fully understand this next topic. In many ways, the service container is the heart of Laravel. A proper understanding is paramount to your success with Laravel. Let's review all the details in this lesson.
  • 17

    Episode 17 Run Time 13:16

    Bootstrapping With Service Providers Free

    Service providers, though a bit confusing at first, offer a mechanism for any component to register itself with Laravel. Whether you're bootstrapping a custom package, or simply registering a series of events listeners, it all takes place in a service provider. I'll teach you the ins and outs in this lesson.
  • 18

    Episode 18 Run Time 8:59

    Conclusion Free

    Every series must end at some point. For "Laravel From Scratch" (, that time is now. In this final review, we'll do a final sweep over Laravel's directory structure, and review what we've learned. Naturally, there's so much more to cover; so get back to the "Laravel" Skill here at Laracasts, and move on to the next step!