Published on
FeaturedPersonal ProjectIn Progress

Laravel Core Admin

By Samsul Hadi @Threads
Laravel Core Admin

Laravel Core Admin is a batteries-included admin starter built on Laravel + Vue that aims to get CRUD apps and internal tools into shape fast. It ships with a clean UI kit, sensible defaults, and a production-friendly setup (queues, scheduler, storage, mailing) so you can focus on business logic instead of wiring.

Highlights

  • Modern stack: Laravel 10+, Vue components, Vite build, Bootstrap-based styling.
  • Ready for ops: queue processing (Horizon), scheduled tasks, environment-driven config.
  • Clean DX: sensible folder structure, seeded demo data (optional), and sample modules to kickstart features.

Tech Stack

  • Backend: Laravel (PHP 8.2+), MariaDB/MySQL.
  • Frontend: Vue, Bootstrap, Vite.
  • Tooling: Composer, Node/NPM, Laravel Horizon for queues.

Before You Start

  • PHP 8.2+ with required extensions.
  • Database server: MySQL/MariaDB.
  • Web server: Nginx or Apache.
  • Local dev helpers (optional): Valet (macOS) or Laragon (Windows).

Quick Setup

  1. Clone the project and enter the directory.
  2. Environment: copy .env.example to .env and set your DB/mail credentials.
  3. Backend deps: composer install.
  4. Frontend deps: npm install then:
    • Dev: npm run dev
    • Prod: npm run build
  5. App key: php artisan key:generate.
  6. Database: php artisan migrate --seed (seeds are optional but recommended for a quick tour).
  7. Storage link: php artisan storage:link (for public file access).
  8. Mail driver: configure a sandbox service like Mailtrap or local MailHog.
  9. Queues: run workers with php artisan horizon.
  10. Scheduler: add a cron entry to run every minute:
    * * * * * cd /path/to/project && php artisan schedule:run >> /dev/null 2>&1

Accessing the App

Point your local domain (e.g., http://laravel-core-admin.test) to the project’s public directory. If you seeded demo data, use the demo credentials defined in your seeders to sign in.

UI Template

The admin interface is based on Velzon by Themesbrand.

Production Notes

  • Set APP_ENV=production and APP_DEBUG=false.
  • Use a process supervisor for Horizon (e.g., supervisord or systemd).
  • Configure proper caching: php artisan config:cache, route:cache, and view:cache.
  • Serve via HTTPS with HTTP/2 where possible.

Status: In progress — evolving starter focused on speed, clarity, and production-ready defaults.