Photo by 
    Iñaki del Olmo
 on 
    Unsplash
Photo by Iñaki del Olmo on  Unsplash
Photo by Iñaki del Olmo on  Unsplash

Setelah selesai instalasi, hal yang paling perlu kita pahami adalah struktur folder dari Laravel sendiri. Hal ini supaya kita tahu bagian-bagian folder dan file mana yang perlu penekanan selama pengembangan. Saya tidak akan menjelaskan secara keseluruhan, hanya yang menurut saya penting saja untuk pembuatan fitur minimal, seperti Create-Read-Update-Delete (CRUD).

Folder app

Berikut adalah struktur folder app

.  
├── Console  
├── Exceptions  
├── Http  
│   ├── Controllers  
│   └── Middleware  
├── Providers  
└── User.php

Pada folder app, terdapat dua bagian besar yang perlu diperhatikan, yaitu folder Http\Controller dan folder app sendiri. Untuk setiap controller yang akan dibutuhkan pada aplikasi akan diletakkan pada folder Http\Controller dan untuk model akan diletakkan pada pada folder app secara langsung. File User.php diatas adalah salah satu model yang sudah ter-generate secara otomatis ketika mulai membuat project Laravel baru.

Pada folder Http\Controller terdapat beberapa file controller yang juga sudah ter-generate.

.  
├── Controllers  
│   ├── Auth  
│   │   ├── ForgotPasswordController.php  
│   │   ├── LoginController.php  
│   │   ├── RegisterController.php  
│   │   ├── ResetPasswordController.php  
│   │   └── VerificationController.php  
│   └── Controller.php  
├── Kernel.php  
└── Middleware

Folder resources

Berikut adalah struktur folder resources

.  
├── js  
├── lang  
├── sass  
└── views  
    └── welcome.blade.php

Pada folder resources , hal yang perlu diperhatikan adalah folder resources\view karena kita akan menyimpan semua view kita pada folder ini. File welcome.blade.php adalah salah satu contoh view yang sudah ter-generate ketika pembuatan project Laravel baru.

Folder routers

Berikut adalah struktur folder routers

.  
├── api.php  
├── channels.php  
├── console.php  
└── web.php

Pada folder routers, hal yang perlu diperhatikan adalah file web.php. Nantinya semua daftar router yang ada pada aplikasi akan kita tempatkan pada file web.php.

Folder database

Berikut adalah struktur folder database

.  
├── factories  
│   └── UserFactory.php  
├── migrations  
│   ├── 2014\_10\_12\_000000\_create\_users\_table.php  
│   └── 2014\_10\_12\_100000\_create\_password\_resets\_table.php  
└── seeds  
    └── DatabaseSeeder.php

Pada folder database, hal yang perlu diperhatikan adalah folder migration. Apa itu migration? Nanti akan saya jelaskan di part berikutnya.

Folder public

Berikut adalah struktur folder public

.  
├── css  
│   └── app.css  
├── favicon.ico  
├── index.php  
├── js  
│   └── app.js  
├── robots.txt  
├── svg  
│   ├── 403.svg  
│   ├── 404.svg  
│   ├── 500.svg  
│   └── 503.svg  
└── web.config

Bisa kita perhatikan file-file yang ada pada folder public terdapat file css dan js yang kita perlukan untuk styling aplikasi kita. Jika nanti kita menggunakan assets seperti css , js , dan image dari pengembang lain, maka semua assets tersebut akan ditempatkan di folder public.

Sampai jumpa di-part berikutnya!

Cappy Hoding! 🖖🏾