Lumina adalah platform blog modern berbasis Laravel 12 yang menampilkan artikel, sistem komentar, likes, dan fitur interaksi penulis–pembaca. Proyek ini mengutamakan kemudahan pengembangan dengan dukungan asset build via Vite serta opsi menjalankan aplikasi secara lokal ataupun melalui Docker.
- Pengelolaan blog lengkap dengan kategori dan penulis
- Sistem komentar dengan autentikasi pengguna
- Dukungan like dan follow untuk konten & penulis
- Integrasi ikon berbasis Blade dan asset bundling dengan Vite
- Laravel 12 (PHP 8.3)
- MySQL 8
- Redis 7 (opsional)
- Vite + Tailwind CSS & ekosistem Blade Icons
- PHP >= 8.3 dengan ekstensi:
pdo_mysql,mbstring,bcmath,intl,gd,zip,redis - Composer 2.x
- Node.js 20.x & npm (atau package manager kompatibel)
- MySQL 8.x
- Redis 7.x (opsional tapi direkomendasikan)
- Git untuk mengelola repositori dan dependency
- Clone repositori & masuk ke folder proyek
git clone https://github.com/rendy-ptr/Lumina.git cd Lumina - Salin file environment dan sesuaikan konfigurasi
Ubah kredensial database, Redis, Cloudinary, serta konfigurasi lain sesuai lingkungan Anda.
cp .env.example .env
- Install dependency PHP
composer install
- Generate application key
php artisan key:generate
- Jalankan migrasi dan seeder (opsional)
php artisan migrate --seed
- Install dependency JavaScript dan build asset
Untuk mode pengembangan gunakan:
npm install npm run build
npm run dev
- Jalankan aplikasi
Aplikasi tersedia di
php artisan serve
http://127.0.0.1:8000. Jalankannpm run devdi terminal terpisah agar Vite memantau perubahan front-end secara live.
Gunakan opsi ini jika ingin menjalankan aplikasi tanpa menyiapkan PHP/Node/MySQL secara manual.
- Clone repositori (jika belum) dan masuk ke direktori proyek
git clone https://github.com/rendy-ptr/Lumina.git cd Lumina - Siapkan konfigurasi environment khusus Docker
Perbarui kredensial yang diperlukan (mis. Cloudinary, secret key lain). Saat container
cp .env.docker.example .env.docker
apppertama kali berjalan,.env.dockerakan otomatis disalin ke.env. - Build serta jalankan container
Composer akan otomatis menjalankan
docker compose up -d --build
composer installsaat containerapppertama kali hidup. Cek progres lewat:docker compose logs -f app
- Inisialisasi Laravel sebelum pengembangan
docker compose exec app php artisan key:generate docker compose exec app php artisan migrate --seed docker compose exec app php artisan storage:link
- Pasang dependency front-end
docker compose exec app npm install - Proses asset dan jalankan mode pengembangan
- Build sekali jalan (mode produksi):
docker compose exec app npm run build - Mode pengembangan dengan hot reload (jalankan setelah migrasi selesai):
docker compose exec app npm run dev -- --host
- Build sekali jalan (mode produksi):
Setelah langkah di atas, aplikasi aktif di http://localhost:8000. MySQL tersedia pada localhost:33060 (user/password sesuai .env.docker), Redis pada localhost:63790. Hentikan seluruh container dengan docker compose down, atau sertakan -v untuk sekalian menghapus volume (mysql-data, vendor, node_modules) bila ingin benar-benar bersih.
php artisan test— menjalankan seluruh pengujian aplikasiphp artisan migrate:fresh --seed— reset database dan jalankan seeder ulangnpm run lint/npm run build— sesuaikan dengan skrip npm yang tersediacomposer dump-autoload— regenerasi autoloader Composer
Proyek ini menggunakan lisensi MIT. Anda bebas memanfaatkan, memodifikasi, dan mendistribusikan ulang selama tetap mencantumkan lisensi yang sama.