Artikel Laravel
Pendahuluan
Salah satu alasan Laravel menjadi framework PHP paling populer adalah karena strukturnya yang rapi dan terorganisir. Laravel menerapkan pola MVC (Model-View-Controller) sehingga developer lebih mudah mengelola kode dalam skala kecil maupun besar.
Bagi pemula, memahami struktur folder Laravel adalah langkah penting sebelum membangun aplikasi web. Dengan mengetahui fungsi masing-masing folder, proses debugging, pengembangan, dan deployment akan jauh lebih mudah.
Struktur Folder Utama Laravel
Setelah membuat project Laravel baru, kamu akan melihat beberapa folder dan file. Berikut penjelasan masing-masing:
1. app/
Folder app berisi logika inti aplikasi. Di sinilah kamu akan menemukan Model, Controller, Middleware, dan lainnya.
-
app/Console→ Tempat membuat command artisan. -
app/Exceptions→ Menangani error dan exception. -
app/Http→ Berisi controller, middleware, dan kernel aplikasi. -
app/Models→ Tempat menyimpan model Eloquent ORM.
2. bootstrap/
Berisi file yang digunakan Laravel saat proses bootstrapping (awal aplikasi dijalankan).
-
File utama:
app.php→ menginisialisasi Laravel framework.
Biasanya tidak perlu diubah kecuali untuk konfigurasi tingkat lanjut.
3. config/
Folder ini menyimpan file konfigurasi aplikasi. Misalnya:
-
app.php→ pengaturan utama aplikasi. -
database.php→ konfigurasi database. -
mail.php→ pengaturan email.
Semua konfigurasi bisa diatur lewat file .env, lalu dipanggil di folder ini.
4. database/
Berhubungan dengan database aplikasi.
-
migrations/→ file migrasi untuk struktur tabel. -
factories/→ membuat data dummy. -
seeders/→ mengisi database dengan data awal.
5. public/
Satu-satunya folder yang bisa diakses dari browser.
-
index.php→ pintu masuk aplikasi Laravel. -
Folder ini juga tempat menyimpan asset seperti CSS, JavaScript, dan gambar.
6. resources/
Folder untuk view dan asset mentah.
-
views/→ berisi file Blade (.blade.php). -
lang/→ untuk file terjemahan (lokalisasi). -
css,js→ asset yang nantinya akan di-compile dengan Laravel Mix atau Vite.
7. routes/
Tempat mendefinisikan rute aplikasi.
-
web.php→ routing untuk web (menggunakan session, CSRF). -
api.php→ routing untuk API (stateless). -
console.php→ routing untuk command artisan. -
channels.php→ routing untuk event broadcasting.
8. storage/
Berisi file yang di-generate oleh Laravel.
-
app/→ file aplikasi. -
framework/→ cache, session, log. -
logs/→ catatan error & aktivitas aplikasi.
9. tests/
Folder untuk menyimpan unit test dan feature test. Laravel mendukung PHPUnit secara bawaan.
10. vendor/
Folder yang berisi library dan package dari Composer.
⚠️ Jangan edit manual folder ini.
11. .env
File konfigurasi utama aplikasi. Berisi pengaturan seperti database, mail, API key, dsb.
Contoh:
Visualisasi Struktur Folder Laravel
Kesimpulan
Memahami struktur folder Laravel adalah langkah dasar yang wajib dipelajari setiap developer. Dengan mengenal fungsi masing-masing folder—mulai dari app untuk logika aplikasi, routes untuk jalur akses, hingga resources untuk tampilan—developer bisa bekerja lebih cepat dan rapi.
Jika kamu baru belajar Laravel, cobalah untuk bereksperimen dengan folder routes/, app/Http/Controllers, dan resources/views, karena ketiganya adalah fondasi dari alur MVC di Laravel.
Laravel