Skip to main content

How to Structure Laravel Project

4h 51m 17s
English
Paid

Course description

Basic Laravel is an MVC framework, it’s clear what should be in Model, View and Controller. But what if you have custom logic for processing data before passing it to the view? Where should it be?

Read more about the course
  • In the same Controller method?
  • Separate private Controller method?
  • Static function in Model?
  • Separate class, like Service?
  • Or, maybe, global helper function without any class?
  • Also, I’ve heard Repository is a widely-used pattern?

And the list goes on.

Of course, the correct answer is it depends. But depends on what?
This is what I’m gonna talk about in this course.

The goal is to discuss practical examples of structuring larger Laravel applications, various approaches and patterns. We will analyze existing popular open-source projects and their structure.

Important notice: this course won’t be about design patterns. So fancy keywords like Singleton, Factory, Adapter, Repository etc will be used only when appropriate.
What I will try to do is focus on the practical side: folders, classes and methods, and not on how that pattern actually is called in theory. In reality, every project is actually a mix of patterns, and developers don’t even know how they’re called.

Watch Online

This is a demo lesson (10:00 remaining)

You can watch up to 10 minutes for free. Subscribe to unlock all 29 lessons in this course and access 10,000+ hours of premium content across all courses.

View Pricing
0:00
/
#1: Use More Eloquent: Accessors/Mutators, Scopes, Observers & "Magic" Methods

All Course Lessons (29)

#Lesson TitleDurationAccess
1
Use More Eloquent: Accessors/Mutators, Scopes, Observers & "Magic" Methods Demo
10:10
2
Controllers and Routes: Where to Put "Extra" Methods?
08:54
3
Structuring Blade Files: @extends, @yield and Other Commands
13:18
4
Custom Base Controllers and Base Models
05:14
5
Configuration: Never Use env() Directly in Controllers/Models
05:27
6
Form Request Classes for Validation
04:36
7
User Notifications: Stop Using Mail::send()
05:51
8
Jobs, Queues and Scheduling Tasks
05:05
9
Events and Their Listeners
07:16
10
API Resources for Data Transformation
09:18
11
Global Helpers, External PHP Classes, Autoloading and PSR-4
06:53
12
1. Single-Responsibility Principle
06:36
13
2. Open-Closed Principle
11:37
14
3. Liskov Substitution Principle
04:23
15
4. Interface Segregation Principle
05:18
16
5. Dependency Inversion Principle
04:44
17
Repositories: to Use or Not to Use?
09:12
18
When/How to Use Service Classes?
06:36
19
Traits: Good Practice or Last Resort?
04:51
20
Dependency injection in PHP and Laravel
06:31
21
Adapter, Strategy, Factory and Other Fancy Words
05:29
22
Wait, What About Unit Testing?
05:35
23
Create Your Own Laravel Package
09:20
24
Laravel Modules: Package by Nicholas Widart
07:03
25
Review: Akaunting Open-Source Project Structure
40:51
26
Review: Laravel.io Community Portal Structure
12:03
27
Review: MonicaHQ - Personal CRM Project Structure
41:55
28
Public Website + Adminpanel: Reusing Classes and Features
12:16
29
Refactoring Big Controller Into Various Classes/Methods
14:55

Unlock unlimited learning

Get instant access to all 28 lessons in this course, plus thousands of other premium courses. One subscription, unlimited knowledge.

Learn more about subscription

Comments

0 comments

Want to join the conversation?

Sign in to comment

Similar courses

Scaling Laravel

Scaling Laravel

Sources: serversforhackers.com
The first time I put code into a load balanced environment, I accidentally gave away thousands of dollars in prizes within a few minutes. After pulling an all-nighter to get the...
9 hours 29 minutes 45 seconds
PHP with Laravel - Create a Restaurant Management System

PHP with Laravel - Create a Restaurant Management System

Sources: udemy
Welcome to the PHP with Laravel - Create a Restaurant Management System. The course covers the concepts of using PHP and Laravel Framework to build an innovativ
9 hours 39 minutes 12 seconds
Laravel 8 PHP Framework A - Z Build Professional Ecommerce

Laravel 8 PHP Framework A - Z Build Professional Ecommerce

Sources: udemy
As i told you this complete project course which beings you to Beginner to Advance level by creating complete most advanced Ecommerce Project. You will able to understand how to...
71 hours 53 minutes 34 seconds
Mastering Laravel 10 Query Builder, Eloquent & Relationships

Mastering Laravel 10 Query Builder, Eloquent & Relationships

Sources: udemy
Are you struggling with Laravel databases and Eloquent? Do you want to learn how to easily manage your database with migrations and seeders? Look no further than Code With Dary'...
7 hours 27 minutes 32 seconds
Laravel Backends for Vue.js 3

Laravel Backends for Vue.js 3

Sources: vueschool.io
Vue has held a special place in the front-end for Laravel developers since 2015. It started when the Laravel creator Taylor Otwell tweeted: "Learning @vuejs bec
3 hours 44 minutes