java php laravel linux mysql sql bootstrap html css query java php laravel linux mysql sql bootstrap html css query

Friday, April 10, 2026

laravel artisan CLI

⚔️
⚔️ ARTIKEL 5 DARI 50 Laravel Artisan CLI Terminal
⚔️

Mengenal Artisan CLI:
Senjata Rahasia Laravel

Satu perintah di terminal bisa menggantikan pekerjaan 30 menit kerja manual. Inilah kekuatan Artisan — dan kamu akan menguasainya sekarang.

⏱️
Estimasi Baca
9–11 Menit
🎯
Level
Pemula Friendly
📅
Update
2025

Coba bayangkan seorang tukang kayu yang harus memaku setiap paku secara manual — satu per satu, dengan tangan kosong. Melelahkan, bukan? Sekarang bayangkan dia punya nail gun (alat tembak paku otomatis). Itulah perbandingan developer Laravel tanpa dan dengan Artisan. Kalau kamu sedang mengenal Laravel framework secara serius, Artisan CLI adalah salah satu fitur paling powerful yang akan mengubah cara kamu bekerja selamanya.

Di artikel ke-5 dari seri 50 Artikel Belajar Laravel ini, kita akan bedah tuntas apa itu Artisan, perintah-perintah paling berguna yang wajib kamu hafal, sampai cara membuat perintah Artisan milikmu sendiri. Serius, setelah membaca ini kamu bakal ketagihan ketik-ketik di terminal! 😄

⚔️ Definisi Utama

Artisan = Antarmuka Baris Perintah (CLI) Bawaan Laravel

Artisan adalah CLI resmi Laravel yang dibangun di atas komponen Symfony Console. Ia menyediakan puluhan perintah siap pakai untuk mempercepat development — mulai dari membuat file, menjalankan migrasi, hingga membersihkan cache. Semua bisa dilakukan dengan satu baris perintah di terminal.

⚡ Apa Itu Artisan dan Mengapa Wajib Dikuasai dalam Mengenal Laravel Framework

Kalau kamu pernah kerja di dapur restoran bintang 5, kamu tahu ada bedanya chef yang kerja dengan pisau biasa vs chef yang punya set alat masak profesional lengkap. Hasilnya mungkin sama-sama enak, tapi kecepatan dan efisiensinya beda jauh. Artisan CLI adalah set alat profesional itu untuk developer Laravel.

Dengan Artisan, pekerjaan yang biasanya butuh waktu lama — membuat Controller baru, membuat file Migration, men-generate boilerplate kode — bisa selesai dalam hitungan detik. Tidak perlu copy-paste file, tidak perlu ingat struktur kode dari nol. Artisan mengurusnya untukmu.

Kategori Perintah Contoh Perintah Fungsi Singkat
Generate File make:controller Buat file Controller baru
Generate File make:model Buat file Model Eloquent
Generate File make:migration Buat file migrasi database
Database migrate Jalankan semua migrasi pending
Database migrate:rollback Batalkan migrasi terakhir
Aplikasi serve Jalankan development server
Aplikasi cache:clear Bersihkan cache aplikasi
Interaktif tinker REPL interaktif untuk eksplorasi kode
🔥
Fakta Menarik

Laravel menyertakan lebih dari 100 perintah Artisan bawaan sejak pertama kali diinstall. Dan kamu bisa menambah perintah sendiri sebanyak yang kamu mau! Untuk melihat semua daftar perintah yang tersedia, cukup ketik php artisan list di terminal.

🛠️ Perintah Artisan Paling Penting yang Wajib Kamu Kuasai

Dari ratusan perintah yang ada, ada beberapa yang akan kamu pakai hampir setiap hari. Kuasai yang ini dulu, dan kamu sudah selangkah lebih jauh dalam perjalanan mengenal Laravel framework secara profesional.

1

php artisan serve — Nyalakan Server Lokal

Perintah pertama yang selalu kamu pakai. Ini menyalakan server development built-in PHP di http://localhost:8000. Tidak perlu konfigurasi Apache atau Nginx untuk development!

Terminal 📋 Bash
$ php artisan serve

# Output:
   INFO  Server running on [http://127.0.0.1:8000].
   Press Ctrl+C to stop the server

# Atau dengan port custom:
$ php artisan serve --port=8080
2

php artisan make:controller — Buat Controller Instan

Daripada buat file PHP kosong dan nulis boilerplate dari nol, biarkan Artisan yang mengurusnya. Hasilnya langsung terstruktur dan siap isi logika!

Terminal
# Buat Controller biasa
$ php artisan make:controller ProductController

# Buat Resource Controller (lengkap dengan semua method CRUD)
$ php artisan make:controller ProductController --resource

# Output:
   INFO  Controller [app/Http/Controllers/ProductController.php] created successfully.
3

php artisan make:model — Buat Model Eloquent

Artisan bisa sekaligus membuat Model + Migration + Controller dalam satu perintah. Ini fitur yang akan menghemat banyak waktu kamu!

Terminal
# Model saja
$ php artisan make:model Product

# Model + Migration sekaligus (SUPERCOMBO!) 🚀
$ php artisan make:model Product -m

# Model + Migration + Controller + Resource (paket lengkap!)
$ php artisan make:model Product -mcr
4

php artisan tinker — Playground Interaktif Laravel

Tinker adalah REPL (Read-Eval-Print Loop) untuk Laravel. Anggap ini sebagai "playground" tempat kamu bisa coba kode PHP dan query Eloquent secara langsung tanpa harus buka browser!

Terminal — Tinker Session
$ php artisan tinker

Psy Shell v0.12 (PHP 8.2) by Justin Hileman
>>> 1 + 1
=> 2
>>> App\Models\User::count()
=> 5
>>> App\Models\User::first()->name
=> "Admin Laravel"
5

Perintah Cache & Maintenance — Wajib untuk Production

Kelompok perintah ini sangat berguna saat kamu deploy aplikasi atau mengalami masalah aneh yang ternyata disebabkan oleh cache lama yang belum dibersihkan:

Terminal — Cache Commands
# Bersihkan cache aplikasi
$ php artisan cache:clear

# Bersihkan cache konfigurasi
$ php artisan config:clear

# Bersihkan cache route
$ php artisan route:clear

# Bersihkan cache view (Blade)
$ php artisan view:clear

# Aktifkan maintenance mode (halaman "down")
$ php artisan down
# Matikan maintenance mode
$ php artisan up
💡
Tips: Cari Bantuan dengan --help

Lupa cara pakai sebuah perintah? Tambahkan flag --help di belakangnya! Contoh: php artisan make:model --help akan menampilkan semua opsi yang tersedia lengkap dengan penjelasannya. Fitur ini sangat berguna dan sering dilupakan oleh pemula!

🧩 Cara Membuat Custom Artisan Command Sendiri

Ini bagian yang bikin mengenal Laravel framework terasa benar-benar menyenangkan: kamu bisa membuat perintah Artisan sendiri! Bayangkan kamu punya tugas rutin seperti mengirim email newsletter setiap hari — daripada buka browser dan klik tombol, kamu bisa buat perintah php artisan newsletter:send dan atur jadwalnya secara otomatis.

🔍 Anatomi Sebuah Custom Artisan Command
Terminal — Generate Command
$ php artisan make:command SendNewsletter

File baru akan dibuat di app/Console/Commands/SendNewsletter.php. Berikut struktur dasarnya:

app/Console/Commands/SendNewsletter.php
<?php

namespace App\Console\Commands;

use Illuminate\Console\Command;

class SendNewsletter extends Command
{
    // Nama perintah di terminal
    protected $signature = 'newsletter:send';

    // Deskripsi yang muncul di php artisan list
    protected $description = 'Kirim newsletter ke semua subscriber';

    // Logika utama perintah dijalankan di sini
    public function handle()
    {
        $this->info('Newsletter sedang dikirim...');
        // Logika pengiriman email di sini
        $this->info('Newsletter berhasil dikirim! 🎉');
    }
}
$signature
Nama perintah di terminal
$description
Keterangan di artisan list
handle()
Logika utama dijalankan
Insight Penting: Output Warna di Tinker

Di dalam method handle(), kamu bisa pakai beberapa helper untuk output berwarna: $this->info() untuk teks hijau, $this->error() untuk teks merah, $this->warn() untuk kuning, dan $this->line() untuk teks biasa. Ini membuat output perintahmu jauh lebih mudah dibaca!

📅 Menjadwalkan Perintah Artisan secara Otomatis (Task Scheduling)

Kehebatan Artisan tidak berhenti di situ. Kamu bisa menjadwalkan perintah untuk dijalankan otomatis di waktu tertentu — seperti alarm yang berbunyi setiap pagi. Ini menggunakan fitur Task Scheduling di Laravel yang diintegrasikan dengan Artisan.

app/Console/Kernel.php 📋 PHP
protected function schedule(Schedule $schedule)
{
    // Kirim newsletter setiap hari pukul 08.00
    $schedule->command('newsletter:send')
             ->dailyAt('08:00');

    // Backup database setiap minggu
    $schedule->command('backup:run')
             ->weekly();

    // Bersihkan log setiap bulan
    $schedule->command('log:clear')
             ->monthly();
}
⚠️
Perhatian: Cron Job Wajib Dikonfigurasi

Task Scheduling Laravel membutuhkan satu Cron Job yang berjalan setiap menit di server kamu. Tambahkan baris ini ke crontab server: * * * * * cd /path-to-project && php artisan schedule:run. Tanpa ini, jadwal yang kamu set tidak akan berjalan!

💡
Cheat Sheet: Perintah yang Paling Sering Dipakai

Simpan tabel di atas atau screenshot perintah-perintah ini — kamu pasti akan sering balik ke sini di awal-awal belajar Laravel:

php artisan list              # Daftar semua perintah
php artisan serve             # Nyalakan server
php artisan make:model X -mcr # Buat Model+Migration+Controller
php artisan migrate           # Jalankan migrasi
php artisan migrate:rollback  # Batalkan migrasi
php artisan tinker            # Masuk mode interaktif
php artisan cache:clear       # Bersihkan semua cache
php artisan route:list        # Tampilkan semua route
⚔️

Kesimpulan: Artisan adalah Senjatamu, Gunakan dengan Bijak!

Selamat! Sekarang kamu sudah mengenal salah satu fitur terkuat dalam proses mengenal Laravel framework secara profesional. Artisan CLI bukan sekadar alat — ia adalah cara berpikir yang lebih efisien sebagai developer. Inilah ringkasan yang perlu kamu ingat:

Artisan CLI adalah antarmuka baris perintah resmi Laravel yang dibangun di atas Symfony Console.
Perintah make:* adalah generator file yang akan menghemat puluhan menit kerja manualmu setiap hari.
php artisan tinker adalah playground interaktif terbaik untuk eksplorasi kode dan query database secara real-time.
Kamu bisa membuat custom Artisan Command sendiri untuk mengotomatisasi tugas-tugas repetitif di proyek Laravel-mu.

Ini adalah bagian dari seri 50 Artikel Belajar Laravel — dan perjalanan kita masih panjang! Di artikel berikutnya, kita akan mulai masuk ke salah satu fondasi paling penting: Routing di Laravel. Kamu akan belajar bagaimana URL di aplikasimu bekerja dari belakang layar. Seru!

#Artisan #Laravel #PHP #CLI #Terminal #Tutorial #BelajarLaravel #MengenalLaravelFramework

database configuration setup

🔥 ARTIKEL 4 DARI 50 Laravel Database Environment Config
🗄️

Setup Database dan Konfigurasi
File .env

Sambungkan aplikasi Laravel-mu ke database dengan benar — karena tanpa koneksi database, aplikasimu cuma HTML keren yang tidak bisa ngapa-ngapain.

⏱️
Estimasi Baca
8–10 Menit
🎯
Level
Pemula Friendly
📅
Update
2025

Bayangkan kamu baru saja selesai membangun rumah impian — desain keren, ruangan tertata rapi, semua furnitur sudah on point. Tapi ada satu masalah besar: tidak ada sambungan air. Keren? Iya. Bisa ditinggali? Belum. Nah, itulah kondisi proyekmu di Laravel kalau belum setup database dan file .env.

Saat kamu mulai mengenal Laravel framework secara serius, kamu akan sadar bahwa Laravel punya cara yang sangat elegan untuk mengelola konfigurasi — termasuk koneksi database. Tidak perlu hardcode username dan password di semua file. Semuanya terpusat di satu tempat: file .env. Di artikel ke-4 dari seri 50 Artikel Belajar Laravel ini, kamu akan belajar cara setup database dan mengkonfigurasi file .env dari nol hingga siap pakai!

📌 Konsep Utama

File .env = "Buku Rahasia" Laravel

File .env (environment) adalah file konfigurasi yang menyimpan semua data sensitif dan variabel lingkungan: nama database, username, password, API key, dan lainnya. File ini tidak boleh di-commit ke Git karena berisi informasi rahasia yang berbeda di setiap lingkungan (development, staging, production).

🔍 Mengenal File .env dalam Laravel Framework

Kalau kamu sudah melewati artikel sebelumnya tentang struktur folder Laravel, kamu pasti sudah melihat file .env nongkrong sendirian di root folder project. File ini terlihat sederhana, tapi perannya sangat vital.

Anggap saja file .env seperti kartu identitas aplikasimu. Setiap lingkungan punya identitas berbeda: di laptop kamu pakai database lokal, di server production pakai database cloud. Dengan file .env, kamu bisa ganti konfigurasi tanpa ubah satu baris pun di kode utama.

Variabel .env Fungsi Contoh Nilai
APP_NAME Nama aplikasi Laravel MyApp
APP_ENV Mode lingkungan aplikasi local / production
APP_DEBUG Tampilkan error detail true / false
DB_CONNECTION Jenis database yang digunakan mysql / pgsql / sqlite
DB_HOST Alamat server database 127.0.0.1
DB_DATABASE Nama database yang dipakai laravel_db
DB_USERNAME Username database root
DB_PASSWORD Password database (kosong atau password-mu)
🔥
Fakta Menarik

Laravel menggunakan library vlucas/phpdotenv di balik layar untuk membaca file .env. Library ini secara otomatis memuat semua variabel dari .env ke dalam $_ENV dan $_SERVER PHP saat aplikasi booting — tanpa kamu perlu melakukan apa pun!

⚙️ Langkah-Langkah Setup Database Laravel Framework

Oke, teori cukup. Sekarang saatnya tangan kita kotor (secara digital, tentu saja 😄). Ikuti langkah-langkah berikut secara berurutan ya — jangan skip!

1

Buat Database Baru di phpMyAdmin / MySQL

Buka phpMyAdmin atau MySQL CLI-mu, lalu buat database baru. Nama database bebas — tapi gunakan huruf kecil dan underscore untuk memudahkan pengetikan.

MySQL CLI 📋 SQL
CREATE DATABASE laravel_db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
-- Atau di phpMyAdmin: klik "New" → isi nama database → pilih utf8mb4_unicode_ci → Create
2

Salin File .env.example menjadi .env

Laravel tidak menyertakan file .env secara langsung di repository. Yang ada adalah .env.example sebagai template. Duplikat file ini:

Terminal / Command Prompt 📋 Bash
# Di Linux / Mac:
cp .env.example .env

# Di Windows (Command Prompt):
copy .env.example .env
3

Edit Konfigurasi Database di File .env

Buka file .env dengan text editor favoritmu (VS Code recommended), lalu ubah bagian konfigurasi database:

.env 📋 ENV
APP_NAME=LaravelBelajar
APP_ENV=local
APP_KEY=base64:... (akan di-generate otomatis)
APP_DEBUG=true
APP_URL=http://localhost:8000

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel_db
DB_USERNAME=root
DB_PASSWORD=# Kosong jika tidak pakai password (XAMPP default)
4

Generate APP_KEY

APP_KEY adalah kunci enkripsi unik untuk aplikasimu. Harus di-generate sebelum aplikasi bisa berjalan. Jalankan perintah Artisan berikut:

Terminal — di dalam folder project Laravel
$ php artisan key:generate

# Output yang akan muncul:
Application key set successfully.
5

Test Koneksi dengan Menjalankan Migrasi

Cara terbaik untuk memastikan konfigurasi database berhasil adalah dengan menjalankan migrasi. Laravel akan mencoba terhubung ke database dan membuat tabel default:

Terminal
$ php artisan migrate

# Jika sukses, kamu akan melihat:
  INFO  Running migrations.

  2014_10_12_000000_create_users_table ..... DONE
  2019_08_19_000000_create_failed_jobs_table . DONE
  2019_12_14_000001_create_personal_access_tokens_table DONE
💡
Tips Pro

Kalau pakai XAMPP, pastikan Apache dan MySQL sudah aktif sebelum menjalankan migrasi. Dan kalau password MySQL XAMPP kamu kosong (default), biarkan saja DB_PASSWORD= tanpa diisi apa pun di file .env.

🧪 Cara Menggunakan Variabel .env dalam Kode Laravel

Setelah setup selesai, kamu mungkin bertanya: "Gimana cara baca variabel dari .env di dalam kode Laravel?" Jawabannya: ada dua cara yang elegan.

⚖️ Dua Cara Membaca Variabel .env
🅰️ Fungsi env()
$dbName = env('DB_DATABASE');
$debug = env('APP_DEBUG', false);

Langsung baca dari file .env. Parameter kedua adalah nilai default jika variabel tidak ditemukan.

🅱️ Fungsi config() (Direkomendasikan)
$dbName = config('database.connections.mysql.database');
$appName = config('app.name');

Baca lewat file config di folder config/. Lebih stabil karena bisa di-cache oleh Laravel.

Insight Penting

Saat kamu menjalankan php artisan config:cache untuk production, Laravel akan meng-cache semua konfigurasi. Setelah itu, fungsi env() tidak akan bekerja di luar file config/*.php. Itulah kenapa menggunakan config() adalah praktik terbaik!

🚨 Error Umum dan Cara Mengatasinya dalam Mengenal Laravel Framework

Saat baru mengenal Laravel framework, kamu pasti akan bertemu error. Berikut error database paling umum dan solusinya:

❌ ERROR SQLSTATE[HY000] [2002] Connection refused

Penyebab: MySQL server belum berjalan atau DB_HOST salah.

Solusi: Pastikan MySQL aktif di XAMPP/Laragon/Homebrew. Cek lagi nilai DB_HOST di .env — biasanya 127.0.0.1.

❌ ERROR Access denied for user 'root'@'localhost'

Penyebab: Username atau password database salah di file .env.

Solusi: Cek kembali DB_USERNAME dan DB_PASSWORD. Untuk XAMPP, username default adalah root dan password kosong.

❌ ERROR No application encryption key has been specified

Penyebab: Lupa menjalankan php artisan key:generate.

Solusi: Jalankan php artisan key:generate di terminal. APP_KEY di file .env akan terisi otomatis.

⚠️
Perhatian Penting!

Setelah mengubah file .env, kamu perlu menjalankan php artisan config:clear agar Laravel memuat ulang konfigurasi terbaru. Cache konfigurasi lama bisa menyebabkan perubahan tidak terbaca!

💡
Bonus Tips: Cek Semua Konfigurasi Sekaligus

Mau cek apakah semua konfigurasi terbaca dengan benar? Gunakan Tinker!

$ php artisan tinker
>>> config('database.default')
=> "mysql"
>>> config('app.name')
=> "LaravelBelajar"
🎉

Kesimpulan: Database Tersambung, Siap Bertempur!

Sekarang kamu sudah tahu cara setup database dan konfigurasi file .env di Laravel. Inilah ringkasan yang perlu kamu ingat:

File .env adalah tempat sentral semua konfigurasi sensitif — jangan pernah commit ke Git!
Selalu jalankan php artisan key:generate setelah membuat file .env baru.
Gunakan config() daripada env() di dalam kode untuk performa optimal.
Test koneksi database dengan php artisan migrate — kalau sukses, kamu sudah siap ke langkah berikutnya!

Ini adalah bagian dari seri 50 Artikel Belajar Laravel — perjalanan kamu dalam mengenal Laravel framework secara mendalam masih panjang dan makin seru! Di artikel berikutnya kita akan menjelajahi Artisan CLI, "senjata rahasia" para developer Laravel. Jangan sampai ketinggalan!

#Laravel #PHP #Database #DotEnv #MySQL #Tutorial #BelajarLaravel #MengenalLaravelFramework

struktur folder laravel

📚 SERI BELAJAR LARAVEL — ARTIKEL 3 DARI 50

Mengenal Struktur Folder Laravel
Secara Lengkap

Panduan visual & analogis untuk pemula yang ingin benar-benar paham "rumah" tempat kode Laravel tinggal — sebelum mulai menulis satu baris pun.

#Laravel #PHP #Framework #PemulaPHP #Tutorial
⏱️
Estimasi Baca
8–10 Menit
🎯
Level
Pemula
📅
Diperbarui
2025

Pernah nggak, kamu baru install Laravel, buka folder proyeknya, terus langsung pusing melihat puluhan folder dan file yang bertebaran? "Ini app, bootstrap, config, database, public… gue harus mulai dari mana?!" — kalau kamu pernah ngerasain itu, artikel ini tepat banget untuk kamu.

Dalam perjalanan mengenal Laravel framework, salah satu rintangan pertama yang bikin pemula nyerah bukan soal coding-nya — tapi soal orientasi. Kamu nggak tahu "file ini untuk apa", "kalau mau buat halaman, gue taruh kode di mana", atau "kenapa ada dua folder yang namanya mirip?". Wajar banget, kok!

Di artikel ketiga dari Seri Belajar Laravel: 50 Artikel Lengkap ini, kita akan membedah struktur folder Laravel satu per satu menggunakan analogi yang mudah dipahami — bahkan kalau kamu belum pernah pakai framework sebelumnya. Siap? Mari kita mulai! 🚀

🏗️ Definisi Kunci

Struktur Folder Laravel adalah "peta kota" dari aplikasimu.

Setiap folder punya peran spesifik. Laravel menerapkan prinsip Separation of Concerns — artinya setiap jenis kode dipisahkan ke tempatnya masing-masing agar proyek tetap rapi, terstruktur, dan mudah dikembangkan bersama tim.

🗺️ Analogi: Laravel Itu Seperti Sebuah Restoran

Sebelum kita masuk ke daftar folder, bayangkan dulu Laravel sebagai sebuah restoran. Sebuah restoran yang berjalan lancar pasti punya ruangan-ruangan dengan fungsi berbeda:

  • 🍽️ Ruang makan (public/) — area yang bisa diakses tamu/pengunjung
  • 👨‍🍳 Dapur (app/) — tempat "logika bisnis" dimasak oleh para chef (programmer)
  • 📋 Buku resep (routes/) — daftar pesanan apa yang bisa dilayani
  • 🗄️ Gudang bahan (database/) — tempat menyimpan data dan resep migrasi
  • 🎨 Dekorasi ruangan (resources/views/) — tampilan yang dilihat pelanggan

Kalau kamu paham analogi restoran ini, memahami struktur folder Laravel akan jauh lebih mudah. Setiap folder punya "tanggung jawab" yang jelas — dan kamu nggak perlu menghafalnya semua sekarang. Cukup kenali dulu yang paling sering dipakai.

💡
Tips untuk Pemula
Kamu nggak perlu memahami semua folder Laravel di hari pertama. Fokus dulu ke app/, routes/, resources/views/ — tiga folder itu sudah cukup untuk memulai proyek pertamamu!

📂 Mengenal Laravel Framework: Breakdown Folder Satu Per Satu

Sekarang mari kita lihat tampilan nyata struktur folder Laravel setelah kamu install. Beginilah kira-kira yang kamu lihat di terminal atau file explorer:

Struktur Folder Laravel
my-laravel-app/
├── app/
│   ├── Console/
│   ├── Exceptions/
│   ├── Http/
│   │   ├── Controllers/
│   │   └── Middleware/
│   ├── Models/
│   └── Providers/
├── bootstrap/
├── config/
├── database/
│   ├── factories/
│   ├── migrations/
│   └── seeders/
├── public/
├── resources/
│   ├── views/
│   ├── css/
│   └── js/
├── routes/
│   ├── web.php
│   └── api.php
├── storage/
├── tests/
├── vendor/
├── .env
└── composer.json
📁 Folder / File 🎯 Fungsi Utama ⚡ Seberapa Sering Dipakai
app/ Inti aplikasi: Controllers, Models, Middleware 🔥 Sangat Sering
routes/ Mendefinisikan URL/endpoint aplikasi 🔥 Sangat Sering
resources/views/ Template HTML (Blade) untuk tampilan 🔥 Sangat Sering
database/ Migrasi, seeder, dan factory database ⚡ Sering
config/ Pengaturan koneksi DB, mail, cache, dll. ⚡ Sering
public/ Entry point aplikasi + aset publik (CSS/JS/gambar) 📌 Jarang Diedit
.env Environment variable: kredensial DB, API key 🔥 Sangat Sering
vendor/ Library pihak ketiga (dikelola Composer) 🚫 Jangan Diedit
⚠️
Perhatian Penting!
Folder vendor/ adalah milik Composer, jangan pernah mengedit file di dalamnya secara manual. Perubahan apapun akan hilang saat kamu menjalankan composer update.

🔍 Mengenal Lebih Dalam: 5 Folder Terpenting di Laravel

Sekarang, kita zoom in ke 5 folder yang paling sering kamu sentuh saat membangun aplikasi Laravel. Pelajari ini baik-baik!

1

Folder app/ — Jantung Aplikasimu

Di sinilah semua logika bisnis aplikasimu tinggal. Dua subfolder yang paling penting:

  • app/Http/Controllers/ — Kelas PHP yang menangani request dari browser dan menentukan respons apa yang dikirim balik.
  • app/Models/ — Representasi tabel database. Satu model = satu tabel (misalnya User.php untuk tabel users).
2

Folder routes/ — Peta Jalan Aplikasi

Di sini kamu mendaftarkan semua URL yang bisa diakses. Contoh paling sederhana:

// routes/web.php
Route::get('/tentang', function () {
    return view('tentang');
});

↑ Kode ini berarti: "Kalau user buka /tentang, tampilkan view bernama 'tentang'"

3

Folder resources/views/ — Wajah Aplikasimu

Di sini semua file template HTML (disebut Blade) disimpan. Blade adalah template engine Laravel yang sangat powerful — kamu bisa menulis PHP langsung di dalam HTML dengan sintaks yang bersih dan mudah dibaca. File Blade berekstensi .blade.php.

4

Folder database/ — Gudang Data

Berisi tiga sub-folder penting: migrations/ (script untuk membuat/mengubah tabel), seeders/ (mengisi data awal), dan factories/ (membuat data dummy untuk testing). Migrasi ibarat "version control untuk database" kamu.

5

File .env — Rahasia Tersimpan

File konfigurasi environment yang berisi informasi sensitif seperti nama database, password, API key, dan lainnya. File ini tidak di-commit ke Git dan harus dibuat ulang di setiap server yang berbeda.

# .env — contoh isi file
APP_NAME=LaravelApp
APP_ENV=local
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_DATABASE=nama_database_kamu
DB_USERNAME=root
DB_PASSWORD=password_kamu
🔥
Fakta Menarik
Struktur folder Laravel mengikuti pola arsitektur MVC (Model-View-Controller). Model = app/Models, View = resources/views, Controller = app/Http/Controllers. Pola ini dipakai di hampir semua framework web modern, dari Ruby on Rails sampai Django!

🧠 Cara Cepat Hafal Struktur Laravel dengan Mengenal Framework-nya

Daripada menghafal semua folder sekaligus (yang justru bikin pusing), coba teknik berikut ini. Kamu akan ingat lebih lama!

⚡ Teknik Hafal Cepat: Alur Request Laravel
🌐
Browser
Request masuk
📋
routes/web.php
Routing URL
🎮
Controller
Logika bisnis
🗃️
Model
Ambil data DB
🎨
View (Blade)
Render HTML

💡 Hafal alur ini, kamu sudah hafal 80% dari cara kerja Laravel!

Insight Penting
Saat kamu berhasil membuat satu fitur kecil di Laravel (misalnya halaman "Tentang Kami"), kamu sudah menyentuh minimal 3 folder sekaligus: routes/ (mendaftarkan URL), app/Http/Controllers/ (logika), dan resources/views/ (tampilan). Itulah esensi MVC!

🛠️ Praktikkan Sekarang: Eksplorasi Folder Laravel di Terminal

Teori tanpa praktik = ilmu yang cepat lupa! Setelah kamu install Laravel (lihat Artikel 2), coba jalankan perintah berikut untuk menjelajahi struktur foldernya secara langsung:

Terminal / Bash
# Masuk ke folder proyek Laravel
cd nama-proyek-laravel

# Lihat semua folder dan file (Linux/Mac)
ls -la

# Lihat isi folder app/
ls app/

# Lihat isi folder app/Http/Controllers/
ls app/Http/Controllers/

# Buka file routes/web.php untuk melihat routing
cat routes/web.php
💡
Pro Tips
Gunakan VS Code sebagai code editor karena punya fitur Explorer Panel yang menampilkan semua folder Laravel secara visual di sidebar kiri. Jauh lebih nyaman daripada hanya pakai terminal!
🎯 Kesimpulan

Kamu Sudah Satu Langkah Lebih Dekat dalam Mengenal Laravel Framework!

Di artikel ini kamu sudah belajar:

  • Analogi restoran untuk memahami peran tiap folder Laravel
  • Tabel lengkap 8 folder/file terpenting beserta frekuensi penggunaannya
  • Penjelasan mendalam 5 folder yang paling sering disentuh (app, routes, views, database, .env)
  • Alur request MVC di Laravel dari browser sampai response HTML
  • Perintah terminal untuk mengeksplorasi struktur folder secara langsung

Ingat, kamu nggak perlu menghafal semua folder sekaligus. Cukup fokus ke 3 folder utama: app/, routes/, dan resources/views/ — sisanya akan terasa natural semakin sering kamu ngoding. Artikel selanjutnya kita akan langsung hands-on mengatur koneksi database dan file .env! 🔥

Tags: #Laravel #PHP #StrukturFolder #BelajarLaravel #MVC #Tutorial #WebDevelopment

saifiahmada.com adalah blog belajar programming Indonesia, membahas lengkap materi bahasa pemrograman: code HTML, CSS, Bootstrap, Desain, PHP, MySQL, coding Java, Query, SQL, dan dunia linux