Skip to content

jayabelajar/urbanposts

Repository files navigation

UrbanPost – Portal Berita & CMS Filament

UrbanPost adalah portal berita sederhana berbasis Laravel 12 yang memanfaatkan Filament 4 sebagai panel admin. Aplikasi ini menyiapkan front site publik untuk membaca artikel serta panel editorial dengan peran admin/penulis, lengkap dengan pengelolaan kategori, tag, halaman statis, dan arsip media.

Fitur

  • Panel Filament di /jaya dengan autentikasi dan tema warna amber.
  • Manajemen konten: artikel dengan status (draft/review/published/rejected/archived), kategori, tag, dan halaman statis.
  • Role-based access: admin mengelola semua data, penulis hanya melihat & mengedit artikelnya sendiri.
  • Halaman publik: daftar artikel terbaru, filter kategori, detail artikel dengan tag, related posts, serta halaman statis (about/contact/disclaimer/privacy-policy).
  • Media privat disajikan via route media.show, sehingga file di storage/app/private/covers bisa diakses aman tanpa symlink publik.

Teknologi

  • PHP 8.2+, Laravel 12, Filament 4
  • Vite + Tailwind CSS (CDN fallback di front end)
  • Database bawaan SQLite (mudah diganti ke MySQL/PostgreSQL via .env)

Persiapan

  • PHP 8.2+, Composer 2
  • Node.js 20+ dan npm
  • SQLite (default) atau database lain sesuai kebutuhan

Instalasi Cepat

composer install
cp .env.example .env
php artisan key:generate
# Sesuaikan APP_URL dan koneksi DB di .env (default SQLite)
php artisan migrate --seed
npm install
npm run build        # atau `npm run dev` saat pengembangan
php artisan serve    # akses front-end di http://localhost:8000
  • Skrip satu baris: composer run setup akan menjalankan instalasi, generate key, migrasi, dan build aset.
  • Mode pengembangan all-in-one: composer run dev (menjalankan serve, queue listener, pail log viewer, dan Vite HMR bersamaan).

Akun Bawaan (Seeder)

  • Admin: admin@gmail.com / 1212
  • Penulis: penulis@gmail.com / 1212
  • User dummy: test@example.com / password

Struktur Penting

  • app/Filament/Resources — Resource admin untuk Posts, Categories, Tags, StaticPages, Users.
  • app/Providers/Filament/JayaPanelProvider.php — Konfigurasi panel (path /jaya, widget akun, tema).
  • app/Http/Controllers — Controller front site untuk posts, pages, dan media.
  • resources/views/posts — Tampilan publik (beranda & detail artikel).
  • database/seeders/InitialSeeder.php — Data awal kategori, tag, halaman statis, dan kredensial.

Pengujian

composer run test   # membersihkan cache config lalu menjalankan phpunit

Catatan Produksi

  • Jalankan npm run build sebelum deploy.
  • Pastikan direktori storage dan bootstrap/cache writable oleh web server.
  • Worker queue database: php artisan queue:work (opsional jika fitur queue dipakai).

Lisensi: MIT.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages