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! 🖖🏾