In this tutorial you will learn about the Laravel Application Structure and its application with practical example.
Laravel Root Directory
S.No. |
Directory/File |
Description |
1 |
/app |
This directory contains all of your application’s core code |
2 |
/bootstrap |
This directory contains all those files required to bootstrap the framework and configure auto-loading |
3 |
/config |
This directory contains all the application configuration files |
4 |
/database |
This directory contains all the database migrations and seeds. It can also be used to store the SQLite DB |
5 |
/public |
This directory contains the front controllers and all the application assets such as images, CSS and JavaScript |
6 |
/resources |
This directory contains views , language files and un-compiled assets such as LESS, SASS or JavaScript |
7 |
/routes |
This directory contacins all of the route definitions for your application. |
8 |
/storage |
This directory contains compiled blade templates, filed based sessions and file cache |
9 |
/tests |
This directory contains all your automated unit tests for application |
10 |
/vendor |
This directory contains all the composer dependencies |
Laravel App Directory
S.No. |
Directory/File |
Description |
1 |
/app/Console |
This directory contains all of your artisan commands |
2 |
/app/Events |
This directory contains all your event classes, though it is not created by default |
3 |
/app/Exceptions |
This directory contains all your exception handlers |
4 |
/app/Http |
This is directory contains all your controllers, middleware and form requests |
5 |
/app/Jobs |
This directory contains all queueable jobs, though it is not created by default |
6 |
/app/Listeners |
This directory contains event handler classes, though it is not created by default |
7 |
/app/Mail |
This directory contains all your classes required to send emails, though it is not created by default |
8 |
/app/Notifications |
This directory contains all the notifications sent by application, though it is not created by default |
9 |
/app/Policies |
This directory contains all the authorization policy classes for your application, though it is not created by default |
10 |
/app/Providers |
This directory contains all of the service providers for your application. |
Laravel Framework Files
S.No. |
Directory/File |
Description |
1 |
.env |
It contains environment variables for application |
2 |
.env.example |
It contains environment variables for application |
3 |
.gitattributes |
It is Git configuration files |
4 |
.gitignore |
It is Git configuration files |
5 |
artisan |
It allows you to run Artisan commands |
6 |
composer.json |
It is configuration file for Composer |
7 |
composer.lock |
It is configuration file for Composer |
8 |
gulpfile.js |
It is configuration file for Elixir and Gulp |
9 |
package.json |
It is like composer.json but for frontend assets |
10 |
phpunit.xml |
It is is a configuration file for PHPUnit |
11 |
readme.md |
It contains general information about framework |
12 |
server.php |
It works as internal web server |