Blog pribadi akan cepat terasa merepotkan kalau panel admin-nya tidak enak dipakai. Karena itu saya meluangkan waktu khusus untuk membuat area backend yang sederhana tetapi nyaman. Fokusnya bukan hanya “bisa CRUD”, melainkan membuat proses menulis terasa lancar dari awal sampai publish.
Route admin diproteksi middleware auth
Semua route di bawah prefix /admin dibungkus middleware auth. Di dalamnya ada dashboard ringkas, resource controller untuk artikel, halaman pengelolaan kategori dan tag, moderasi komentar, sampai editor menu. Dengan struktur route yang rapi, saya bisa menambah modul baru tanpa mengacaukan area publik.
Form artikel dirancang untuk workflow nyata
Saat menulis artikel, saya butuh judul, ringkasan, isi, SEO meta, status publikasi, kategori, tag, dan gambar utama dalam satu tempat. Karena itu form admin dibagi menjadi konten utama dan sidebar opsi. Di bagian isi saya memakai TinyMCE via CDN supaya saya bisa menulis HTML yang rapi tanpa harus mengetik tag satu per satu.
Status publish membantu ritme menulis
Terkadang saya ingin menyimpan ide sebagai draft, terkadang saya ingin langsung tayang. Karena itu pilihan status dibuat eksplisit di form: draft, published, dan archived. Saat artikel pertama kali dipublish, field published_at diisi otomatis sehingga halaman publik hanya menampilkan konten yang benar-benar siap baca.
Upload gambar ditangani lewat storage
Featured image disimpan ke disk public menggunakan API filesystem Laravel. Ini membuat upload tetap konsisten, sekaligus memudahkan saat nanti perlu memindahkan storage ke layanan lain. Ketika artikel diperbarui dan gambar diganti, file lama juga ikut dibersihkan agar storage tidak cepat menumpuk.
Dashboard harus menjawab pertanyaan utama
Di dashboard admin, saya menampilkan statistik cepat: jumlah artikel, draft, komentar pending, kategori, tag, hingga total view. Buat saya ini penting karena dashboard seharusnya langsung menjawab “apa yang perlu saya urus hari ini?” tanpa perlu klik terlalu banyak halaman.
Dengan area admin seperti ini, blog terasa seperti alat kerja yang benar-benar siap dipakai, bukan sekadar demo CRUD yang berhenti di tahap teknis.