
Build advanced Laravel applications from basics to enterprise level by developing projects, including a blog system with database-driven features, authentication, admin panel, and a forum with notifications.
Complete every lesson, rewatch unclear parts, and write the code in your editor; master each concept, finish quizzes and assignments, and seek help from peers after researching first.
Install Laravel on your local machine, verify PHP version at least 7.1.3, enable required extensions, and use Composer to create a new project and run it locally.
Explore how Laravel uses the view layer to render pages, map routes with get, and return views from resources/views, such as welcome and about.
Create and use controllers to define what happens when a user visits a route, generate with artisan, and return a view for a page like about via an index method.
Set up a Laravel 2019 todo app by creating a new controller and views, registering a route to the index method, and linking the home page to the to-dos list.
Learn how models communicate with the database using Eloquent in Laravel. Create migrations with Artisan, run and rollback migrations, and define columns like string, text, and boolean with timestamps.
Learn how to use Laravel factories and seeders to generate fake data for models, define attributes with Faker, and seed the database with multiple records for development.
master the model view controller pattern by fetching all todos from the database using the todo model in the controller's index, then display them in a blade view.
Learn to include bootstrap in a Laravel app, apply bootstrap classes for centering text, cards, and responsive layouts, and prep for dynamic routing in the next lesson.
Implement dynamic routing in Laravel to display a single to-do detail page. Fetch the to-do by slug in the show method and render it in a dedicated view.
Learn to create and use layout files in Laravel's templating engine to remove duplication by extending layouts, yielding a content section, and defining page-specific titles and content.
Build a create form for todos, wire a post route to a store method, and save new records to the database with name, description, and a default completed value.
Validate user input before saving data by calling the validate function with rules like required, and display validation errors in the form using an errors bag and alerts.
Master updating database records in Laravel by adding an edit button, registering routes, and implementing edit and update methods with form validation.
Add a delete link styled as danger, implement a controller destroy method, and delete the record from the database to complete the create, read, update, and delete flow.
Learn how route model binding automatically loads a to do based on the dynamic parameter, injecting it into controller methods, reducing duplication and handling non-existent records with redirects.
Learn to flash success messages with Laravel sessions, displaying them in views after create, update, and delete actions using session has and session get.
Set up a full authentication system in a new Laravel CMS project by generating built-in auth, configuring the .env file, and migrating users and password resets.
Learn to build a Laravel CMS by creating post and category models, migrations, and a navigation layout that shows links for authenticated users and hides content for guests.
Create and manage categories with a Laravel resource controller that generates index, create, store, show, edit, update, and destroy methods, and register them as resource routes.
Learn to store categories in Laravel 2019 by validating requests, ensuring unique category names, preventing mass assignment with fillable, and displaying validation errors and flash messages on the categories index.
Explore how Laravel request objects streamline controllers by moving validation into a custom create category request, automatically validating input and authorizing actions, while showing how middleware and authentication gate access.
Reuse the same form for editing and creating categories, using dynamic model binding, proper routing, and patch requests to update categories efficiently.
Implement category deletion with a Bootstrap modal confirmation, using JavaScript to set the form action to the selected category and submit a Laravel delete request with CSRF protection.
Create and manage posts in Laravel by registering resource routes, generating a post controller, and building index and create views with fields for title, description, content, published at, and image.
Store posts by validating with a custom post request, uploading an image to public storage, saving title, description, content, and image in the database, and redirecting with a success message.
Display posts from the database in a table with image and title, fetched in index and shown via the asset method after linking storage, with edit and trash actions.
Upgrade your Laravel application to 5.8 by updating composer.json from 5.7 to 5.8, then run composer update to fetch the Laravel framework and update dependencies per the upgrade guide.
Learn how to implement soft deletes in Laravel by enabling soft delete on a model, adding the deleted_at column via migrations, and using delete and restore to trash data safely.
Learn how to view all trashed posts and permanently delete them in a Laravel app, including creating a trash view, a trashed posts route, and a force delete option.
Learn how to delete a post image from storage when a post is permanently deleted, by using storage delete on the image path.
Add a Trix editor and a date picker to the post creation form, integrate assets, mount the editor, and save the published date to the database.
Update posts by building an edit form with dynamic title, description, content, and image handling, including model binding, route setup for edit, update request validation, and flash feedback.
Refactor by moving image deletion to the post model with a delete_image method, and add a put route to restore trashed posts via model binding.
Explore laravel relationships by linking posts to categories with belongs to and has many, and implement category_id in migrations, forms, and validation for real world projects.
Learn how middleware runs before requests to control access and flow, including maintenance mode checks, redirects, and trim strings, plus building custom middleware like category count verification for posts.
Add a tax resource in Laravel by duplicating the categories flow, including model, migration, controller, requests, and views, enabling create, read, update, and delete with reusable error partials.
Explore how to implement many-to-many relationships in Laravel with a post_tag pivot table, including migrations, belongsToMany relations, and using attach and sync for managing tags.
Implement a tag selector with a dynamic select box using a plugin, following installation steps, and applying the tax selecter class to enable post creation.
Ensure safe deletion of tags and categories by blocking removal when they have associated posts, flashing an error, and redirecting back to prevent crashes in the application.
Define admin and writer roles with an enum, seed a default administrator, hash passwords, and secure the admin area with middleware to manage users and promote others to admin.
Learn to grant admin rights in a Laravel 2019 project by adding a make-admin action with a post route, and display user avatars via gravatar integration.
Enable an authenticated user to update their profile by editing name and about fields via a put endpoint, with CSF token and update profile request validation.
Install and integrate the frontend theme for a Laravel CMS, copy assets and templates, adjust gitignore, and seed dummy posts, categories, and tags to power the UI.
Build the welcome page by loading categories, tags, and posts from the database, display post images with asset paths, and enable search and category-based filtering with pagination.
Build a dynamic Laravel single post page with a post show route and Blade layout. Display post image, category, author, content, and tags, and enable Discourse-based comments and asset rendering.
Learn how to implement and customize Laravel pagination for a blog, using page-based and simple pagination, vendor publishing templates, and tailoring Bootstrap/Blade views for navigation.
Add a get-based search on the welcome page. Query titles with like, paginate results, append the search term, and show a no results message.
Set up dynamic category and tag pages in a Laravel app, displaying posts by category or tag with pagination and search. Prepare for a future lesson on scopes.
Master query scopes in Laravel to filter posts by search terms using the query builder and apply the scope in your controller with simple pagination.
Use the scope published to show posts with published_at up to now, with proper date casting via dates and carbon for accurate published content.
Set up a new Laravel project, scaffold authentication, verify in the browser, and create discussion and channel migrations with slug fields and seed data, aligning the namespace and base model.
Learn to share data across all views in a Laravel app using a service provider, display channels, and build a discussions creation workflow with a resource controller and Blade templates.
Store and display discussions in Laravel by validating input with a create discussion request, associating discussions with users, and paginating the index view.
Display discussions with user avatars, author names, and a view button. Implement slug-based URLs for SEO, show single discussions, extract headers into a partial, and prepare for adding replies.
In this Laravel 2019 real-world project, learn to save replies to the database by adding a Trix editor form for authenticated users, nesting replies under discussions via slug-based routes.
Implement a replies feature by creating a reply model and migration, wiring user and discussion relationships, validating content, saving and displaying paginated replies on the discussion page.
Learn to implement a best reply feature in a Laravel discussion forum, including marking a reply as best, updating the discussion, and displaying the best reply with user avatars.
Explore building Laravel notifications with mail, database, and broadcast channels; create a notification class, customize emails, save unread notifications, and view them on a user notifications page.
Showcases displaying a user's unread notifications, marking them as read, and rendering a paginated notifications list in the blade with links to the related discussion via its slug.
Implement best reply notifications in a Laravel discussion app and guard views for unauthenticated users. Trigger notification when a reply is marked as best, and compose emails with discussion link.
Learn how to offload long tasks to queue jobs in Laravel, using database-backed queues and a queue worker to process notifications and emails in the background, improving user experience.
Learn to filter discussions by channel by clicking a channel link, using a scope to filter by channel id and preserve pagination.
Learn how to implement and customize email verification in Laravel, including migrations, the user model contract, verification endpoints, and queue-based emails.
Master Laravel through project-based learning by building real-world apps, including a traduce API, a dynamic blog, a complete forum, and an e-commerce site with SEO, authentication, and payment flows.
Take notes and write down code by yourself, and exhaust all materials and resources before moving on. Practice-driven learning with ongoing instructor support helps you master Laravel 2019.
Learn that Laravel 5.4 brings no major changes to your app, review minor updates to the API console, and follow the course using 5.3 documentation branch or 5.2 installation.
Learn how to install Laravel on your computer by installing composer, using the Laravel installer or composer create-project, and starting your first local application with artisan.
Set up a simple local Laravel development environment on your machine. Windows users install the tools and create projects on localhost; Mac users use Valet and Homebrew with sqlite.
Explore how the Laravel welcome view is rendered using model view controller concepts, routing, and the web.php file, showing how a slash route returns a blade view and displays data.
Create a Blade view under resources/views and save it, then map a GET route in web.php to return that view, showing how routes and views connect in the MVC structure.
Learn how controllers centralize application logic by fetching data from the database and passing it to views, replacing callbacks with a dedicated controller and routes.
Configure the database and environment variables, then create an eloquent model and its migration to interact with the table for to do items.
Learn to generate dummy data with Laravel model factories for the traduce table, using Faker to define fields, and seed the database with a seeder class.
Master the model, view, and controller workflow in Laravel 2019 by retrieving data with the all method, passing it to a Blade view via with, and rendering with Blade templating.
Master refactoring with Blade layouts in Laravel by creating a shared layout, extending it in pages, and injecting content with sections to streamline Bootstrap styling across views.
Explore storing new to-dos in a Laravel app by submitting a form with CSRF protection, saving via the traduce controller, and redirecting back to view updates.
Learn to delete to do items in Laravel by adding a delete button, passing the id via a route, finding the item with Eloquent, deleting it, and redirecting back.
Explore implementing to-do updates in Laravel by adding an updates route and controller method, rendering an updates view with the item, and processing the post to save changes.
Learn how to update records in Laravel 2019 by locating a specific to-do item, changing its attributes, saving, and redirecting to a route or back to the list.
Mark to-dos as completed by using a boolean completed field in the database. Render conditional to-do buttons and add a route and controller method to update the completed status.
Learn to tinker with your database from the command line using Laravel Tinker, listing, finding, editing, and deleting records, and generate dummy data with model factories.
Learn to use Laravel sessions to flash messages after actions like create, update, or delete. Display Bootstrap success alerts by wiring flashes in controllers and layouts.
Set up the database and migrations, generate Laravel authentication scaffolding, customize login and registration views, and redirect authenticated users to the home page.
Create a post model and a category model with migrations, add fields for title, contents, category id, and featured image, and establish the post–category relationship.
Define and implement one-to-many relationships in Laravel by linking categories to posts in models, with categories having many posts and each post belonging to one category.
Create a restful post controller with index, create, store, show, edit, and update methods, and build an admin post create view with a dedicated route.
Create a forum post form and site navigation, wiring a post submission to the post store route and controller with fields for title, content, featured image, and category.
Learn how to group routes with an admin prefix in Laravel, apply authentication middleware, generate links from route names, and display navigation only for authenticated users.
Protect routes with authentication by applying middleware to controllers and route groups, and use named routes with route() for admin and home pages, plus CSRF verification and maintenance mode.
Master data validation in Laravel by using the validates method to enforce rules for title, image, and content, handle validation errors, and display them in the form with multipart data.
Learn to implement categories CRUD in Laravel 2019, including creating, storing, validating, listing, and managing categories through a dedicated categories controller, routes, and views.
Learn to implement toastr notifications in Laravel 2019 by integrating the zoster package, loading assets via the asset helper, and flashing session messages for create, update, and delete actions.
Add category selection to the post creation form by validating category_id, loading all categories into the view, and rendering a select list with each category's id and name.
Save the post to the database and manage the featured image by renaming, moving to uploads/post, and storing its path with the title, content, and category.
Learn how mass assignment works in Laravel and prevent security risk by defining a protected fillable array listing fields like title, content, category_id, and feature.
Implement soft deletes in the post table by adding a slok field and a deleted_at timestamp, then enable the soft delete trait to trash posts instead of removing them.
Create a seed file to automatically insert an administrator when migrating to production. Update the login redirect to admin/home so the admin lands on the admin dashboard after authentication.
Check categories count before posting; if zero, redirect back with an info message stating you must have some categories before attempting to create a post.
Add a slug field to post creation and generate the slug from the title using the framework's string slug method, then verify the slug in the database.
Create an admin posts index that lists all non-deleted posts with their images and titles, and include edit and delete actions.
Learn how to use Laravel accessors to format database fields, such as converting image paths into full image links with assets, and apply this to display styled images in views.
Implement soft deletes in Laravel by adding a trash button that marks posts with a deleted_at timestamp. Use a post destroy route and Eloquent to fetch only non-deleted posts.
Learn to view and manage trashed posts in the Laravel app by creating a trash page, fetching only trashed posts, restoring them, and permanently deleting unwanted ones.
Learn how to permanently delete posts in Laravel using the query builder, including handling trashed records, retrieving the record, and performing a force delete with flash messages and redirects.
Learn how to restore trashed posts in Laravel 2019 by adding a restore method to the controller, querying the trashed post, flushing the session, and redirecting to the post list.
Learn to implement post editing in a Laravel app by wiring index, edit, and update routes, validating title, content, and category, and handling optional feature image uploads.
Display messages when there are no trashed posts or no published posts by checking counts. Organize with panel headings for posts and categories to clarify status.
Explore many-to-many relationships in Laravel by creating a tag table, defining belongsToMany relations on posts and tags, and building a pivot table to connect posts with tags.
Build a Laravel 2019 tags crud module by creating a resource controller, validating input, and implementing index, create, store, edit, update, and destroy methods with views and redirects.
Master one-to-many relationships in Laravel by creating a category and posts, then fetch all posts for a category using the has many relationship and accessing posts as a property.
Explore how to implement many-to-many relationships between posts and categories using checkboxes, pivot tables, and attach, then store and retrieve associated data through the post relationship.
Learn to edit posts by displaying and syncing tax with categories, using one-to-many and many-to-many relationships, and pre-selecting associated categories in Laravel forms.
Learn how to extend a Laravel app by adding an admin field to the users table and creating a one-to-one profile with avatar, about, and social links linked by user_id.
Create an admin user management flow by listing users with avatar, name, permissions, and delete options, and implementing a form-driven user creation with validation and profile creation.
Set up a default avatar for all users, toggle admin privileges with make admin and remove permissions, and plan a permissions middleware in the next lesson.
Review the user system with an admin boolean, a one-to-one profile, and a default avatar, then plan admin permissions and a middleware gate for access control.
Create and apply an admin middleware to filter actions by the authenticated user's permissions and guard routes from unauthorized access.
Laravel 2019 guide shows how to edit user profiles by building a profiles controller and a profile view with fields for name, email, password, avatar, and Facebook and YouTube.
Update your Laravel 2019 skills by validating profile data, uploading avatars, and saving updates to name, email, Facebook, YouTube, and optional password.
Learn how to safely remove users and their profiles, prevent self-deletion, and cascade delete posts when a category is removed, using Laravel destroy methods and soft delete concepts.
Install and integrate the summernote wysiwyg editor in a Laravel 2019 app by adding layout sections for scripts and styles and wiring the editor to content fields for rich posts.
Build a settings feature in a Laravel app by creating a settings table, seeding defaults, and implementing a protected controller to update site name, address, and contact details with persistence.
Build the blog frontend by setting up a theme, organizing assets in public, and wiring dynamic data like the site title, header, latest posts, and categories.
Create a front end controller and route the welcome view to its index. Pass a dynamic site title and four categories, and display the latest post with Cabonne formatting.
Fetch the second and third posts by ordering by created_at desc, skipping one, and taking one; display their titles, categories, formatted timestamps, and image zoom interactions.
Display dynamic categories and their latest posts by querying the database, limiting to three, and render them in the front end while wiring site settings for name and contact.
Build a single blog post page in Laravel 2019 by routing a slot to a controller, querying by the slot, and rendering post data in a reusable layout.
Add next and previous post navigation by querying adjacent posts by id and passing the next and previous post data to the view, with slug routing and assets in Laravel.
Install disqus on your Laravel project by embedding the universal code and configuring the site, slug, and post-specific identifiers to enable user comments.
Build a category page in Laravel that lists all posts in a category using slug-based routing and sets an SEO-friendly page title.
Create a tag page by defining a route and controller method that fetches posts by tag, returning a tag view with the tag, categories, and settings.
Set up a front-end search overlay and Laravel route to perform a wildcard query on post titles, fetch results, and render a results view with no-results messaging.
Learn how to edit database tables with migrations by adding a user_id column to posts, establishing a one-to-many relationship between users and posts, and display related user data.
Install AddThis on your blog to enable inline share buttons with customizable networks and design. Integrate the script into your layout to enable Twitter, Facebook, and Google sharing.
Learn how to integrate Mailchimp with Laravel using a package, configure the API key and list id, publish config, and implement a subscribe form to grow your audience.
Learn practical debugging in Laravel 2019 by fixing form submissions across pages, moving forms to includes, loading styles and scripts, and enabling post editing and site-wide search.
Organize an admin dashboard by moving the dashboard view into the admin directory and displaying panels with counts for published posts, trust posts, users, and categories.
Build a forum with social authentication in Laravel using a community package, configure the provider, implement GitHub login, handle callback, create or update user identities, avatars, and store access tokens.
Create channel, discussion, and reply models with migrations; implement relationships: channel has discussions, discussion belongs to a channel and user, and has replies; reply belongs to a discussion and user.
The admin seeder adds an admin flag to the users table, creates a super admin user, and enables channel management and login, while seeding the database and setting up avatars.
Explore building a channels create, read, update, delete workflow with Laravel's resource controller, register routes, and implement index, create, store, edit, update, and destroy actions.
learn to share channel data across all views in a Laravel app by configuring the service provider boot method to use view share with channels retrieved from the database.
Learn how to seed the channels table by creating multiple channels with titles, register the seeder, and verify the new channels in the application.
Authenticate a user to create a discussion on a chosen channel by submitting a form that posts to the store method in the discussions controller.
Validate and store discussions in a Laravel 2019 app by enforcing channel, title, and content rules, saving to the database with a slug, and rendering a show page for replies.
Seed data in a Laravel project by creating users including Emily, discussions with titles and slugs, and replies, then refresh and view the seeded database to support frontend development.
Create a discussions controller index that fetches and paginates discussions from the database, orders by latest, and passes them to a view to display avatars and content with pagination links.
Style the discussion list by formatting avatars, usernames, spacing, and a view link. Show the post title and a truncated content using a string limit, and display the replies count.
Learn to build a discussion page in Laravel 2019 with a show method that displays a post and its replies, including user avatars, names, timestamps, and content using relationships.
Create a reply feature by adding a text area form that posts to the discussions controller, saving the reply with the authenticated user and discussion, then redirect back with success.
Create a like system in Laravel 2019 course by building a like model and migration for replies, storing reply_id and user_id, and defining like belongs to reply and user.
Implement a like/unlike system for replies in a Laravel app by adding a likes relationship and an isLikedByUser method, then toggle the blade button based on the authenticated user.
Implement like and unlike functionality for replies in a Laravel 2019 project, defining routes and a replies controller to handle like actions, with authenticated user checks and session flash messages.
Implement and display the like count for posts using a Laravel likes relationship and likes table, showing the accounts that liked and updating after each like.
Learn how to add a slug field to the channel database, update the controller to store and display channel discussions, and configure routes and views with pagination.
Clean up a Laravel forum app by refining slugs, adding navigation links, and enforcing authentication for posting and replies. Improve middleware, login flow, and UI layout.
Learn to display forum discussions by showing each discussion's category and channel title, with a button to reveal the channel and link to the channel route.
Implement watching and un-watching discussions in Laravel by creating a watcher table, defining relationships, building a watch controller, wiring routes and views, and enabling email notifications on updates.
Laravel notifications demonstrate sending a new reply notification to discussion watchers via the mail channel, with mail trap for testing.
Send email notifications to all users watching a discussion when a new reply is posted, using Laravel's notification system to format and route the message.
Implement a best answer feature in a Laravel forum by adding a best_answer flag to replies, wiring migrations, controllers, and views to mark and display the chosen reply.
Build a Laravel points system by adding a big integer points field to users. Set a 50-point joining default, increment on replies, display points, and award 100 for best answers.
Implement access control to mark a best answer in discussions by verifying authentication and ownership, showing the option only to the post creator or admins.
Set up validation error display in the discussions form, preserve input with the old method, and install toastr notifications via a content delivery network to show session success messages.
Learn to display whether a discussion is open or closed by checking for a best answer in replies, and implement a hasBestAnswer method to update the UI accordingly.
Implement dynamic filters in Laravel by using get parameters to view 'my discussions' and filter results by solved or unanswered, then paginate with Laravel's paginator.
Fix the home and channel templates for a consistent discussion display, copy the relevant templates, remove unnecessary views, and apply padding and margins to improve formatting.
Learn how to allow the creator to edit discussion content in a Laravel app, via an edit link and content-only updates with validation and redirects.
Learn how to edit replies in a Laravel app, create a dedicated edit page, handle updates, and conditionally display edit options based on best answer status.
Learn to build and apply a custom admin middleware in Laravel to protect channel management by verifying the authenticated user is an administrator.
Learn to enable markdown support in a Laravel app by installing a markdown package, registering the service provider, publishing config, and rendering markdown with syntax highlighting.
Enable markdown support in discussion replies by converting reply contents and best replies to markdown, passing them as parameters, and previewing properly formatted output.
Learn to build a complete product CRUD in Laravel 2019 with real world projects, including migration, model fillable, image upload, validation, and protected routes for an ecommerce admin.
Create a modern Laravel product model factory, defining name, image, description, and price, then seed the database with 13 products.
Build a Laravel 2019 front end for an e-commerce app by integrating templates and assets, creating a front end controller, and displaying products with images, names, and prices.
Learn to customize Laravel's default pagination by editing the vendor pagination template, swapping in your own design, and aligning Bootstrap classes to fit the designer's layout.
Set up a product details page by creating a single product route and a front end controller method, then render image, price, name, and description in the product single view.
Implement a shopping cart in Laravel using a rapid development package, configure the package, create a shopping controller, and add a product detail form that posts to add to cart.
Create a Laravel cart page by building a blade view for the cart, wiring /cards to a shopping controller, and displaying items with cart contents and counts methods.
Associate cart items with the product model to render item images and prices correctly, then adjust package configuration to reflect accurate calculations and visuals in a Laravel cart workflow.
Implement delete functionality for cart items in the Laravel 2019 course, wiring a delete route to remove a product by id via the shopping controller.
Fix the main.js file to restore dropdown control by updating classes and activation logic, ensuring plus key clicks toggle the correct elements without affecting other links.
Implement a Laravel cart update flow by adding and removing items and adjusting quantities with increment and decrement routes that pass item IDs and quantities to update the cart total.
Make the cards dynamic by displaying the basket total, a view cards link, and a centered currency total, while enabling rapid add to cards via a get route.
Wire the checkout button to a checkout route and implement a checkout controller index method to display cart items, their quantities, and the total, including images via assets.
Set up stripe in a Laravel app, manage api keys for test and live modes, and implement a checkout form that uses a stripe token to securely process card payments.
Learn to implement Stripe payments in a Laravel project by configuring amounts in cents, installing the Stripe package, setting API keys, charging via token, and testing with a test card.
Complete an e-commerce flow in Laravel 2019 by flashing a success session message, sending a purchase confirmation email, and redirecting users after checkout.
This course uses a project based approach for learning. It would also be filled with specific articles to read to clearly understand a concept better, and multiple explanations of all concepts taught . We build a number of projects from simple to extra advanced, as listed below.
Course is constantly updated with every new release of the laravel framework, so no matter when you get this course, you are still good to go.
A lot more in this course . Most of all, course is made with LOVE .