Laravel Vue Admin Panel

screenshot of Laravel Vue Admin Panel
laravel
vite
vue
tailwind

Laravel Vue Admin panel

Overview

The Laravel Vue Admin Panel is a ready-to-use admin dashboard built with Laravel, Vue 3, Tailwind CSS, and Inertiajs. It provides a comprehensive set of features for managing an administration panel for web applications.

Features

  • User Permissions: The admin panel is integrated with the spatie/laravel-permission package, allowing for easy management of user permissions.
  • Authentication: The admin panel is built with Laravel Breeze, providing a robust authentication system out of the box.
  • Menu Management: The package balajidharma/laravel-menu is used to handle menu management in the admin panel.
  • Vue 3 and Inertiajs: The admin panel utilizes Vue 3 and Inertiajs for efficient rendering and smooth user experience.
  • Responsive Design: The admin panel is designed to be fully responsive, ensuring optimal viewing on various devices.
  • Easy Installation: The admin panel can be installed either with Docker Desktop or without it, depending on your preference.
  • Super Admin Login: The admin panel includes a pre-configured super admin login for easy access during development.

With Docker Desktop

  1. Install Docker Desktop on your machine.
  2. Open your terminal (Windows users may need to open WSL2 Linux terminal).
  3. Run the following command:
docker run --rm -v "$(pwd)":/opt -w /opt laravelsail/php82-composer:latest bash -c "composer create-project balajidharma/laravel-vue-admin-panel admin-app && cd admin-app && php artisan sail:install --with=mysql,redis,meilisearch,mailpit,selenium"
  1. Change to the admin-app directory:
cd admin-app
  1. Pull the necessary Docker images:
./vendor/bin/sail pull mysql redis meilisearch mailpit selenium
  1. Build the Docker containers:
./vendor/bin/sail build
  1. Start the Docker containers:
./vendor/bin/sail up
  1. Install the required npm packages:
./vendor/bin/sail npm install
  1. Build the assets:
./vendor/bin/sail npm run dev
  1. Publish the necessary vendor files:
./vendor/bin/sail artisan vendor:publish --provider="BalajiDharma\LaravelAdminCore\AdminCoreServiceProvider"
./vendor/bin/sail artisan vendor:publish --provider="BalajiDharma\LaravelMenu\MenuServiceProvider"
  1. Run the necessary database migrations and seeders:
./vendor/bin/sail artisan migrate --seed --seeder=AdminCoreSeeder
  1. Open http://localhost/ in your browser to access the admin panel.

Without Docker Desktop

  1. Install PHP Composer on your machine.
  2. Create a new Laravel Vue Admin Panel project using Composer:
composer create-project balajidharma/laravel-vue-admin-panel admin-app
  1. Change to the admin-app directory:
cd admin-app
  1. Create a new MySQL database and update the database details in the .env file.
  2. Publish the necessary vendor files:
php artisan vendor:publish --provider="BalajiDharma\LaravelAdminCore\AdminCoreServiceProvider"
php artisan vendor:publish --provider="BalajiDharma\LaravelMenu\MenuServiceProvider"
  1. Run the necessary database migrations and seeders:
php artisan migrate --seed --seeder=AdminCoreSeeder
  1. Install the required npm packages:
npm install
  1. Build the assets:
npm run dev
  1. Start the development server:
php artisan serve
  1. Open http://localhost:8000/ in your browser to access the admin panel.

Summary

The Laravel Vue Admin Panel is a powerful and feature-rich admin dashboard built with Laravel, Vue 3, Tailwind CSS, and Inertiajs. It offers user permissions management, authentication, menu management, responsive design, and easy installation options. Whether you prefer using Docker Desktop or not, you can set up and start using the admin panel quickly. With its pre-configured super admin login, it provides a convenient environment for admin panel development.

laravel
Laravel

Laravel is a powerful and elegant PHP framework that provides developers with a comprehensive set of tools and features to build robust web applications. It follows the Model-View-Controller (MVC) architectural pattern, offering a clean and organized structure for writing efficient and maintainable code.

vite
Vite

Vite is a build tool that aims to provide a faster and leaner development experience for modern web projects

vue
Vue

Vue.js is a lightweight and flexible JavaScript framework that allows developers to easily build dynamic and reactive user interfaces. Its intuitive syntax, modular architecture, and focus on performance make it a popular choice for modern web development.

tailwind
Tailwind

Tailwind CSS is a utility-first CSS framework that provides pre-defined classes for building responsive and customizable user interfaces.

dashboard
Dashboard

A dashboard style website template is a pre-designed layout that features a user interface resembling a control panel or dashboard. It typically includes charts, graphs, tables, and other data visualization tools that allow users to monitor and analyze data in real-time.

postcss
Postcss

PostCSS is a popular open-source tool that enables web developers to transform CSS styles with JavaScript plugins. It allows for efficient processing of CSS styles, from applying vendor prefixes to improving browser compatibility, ultimately resulting in cleaner, faster, and more maintainable code.

pinia
Pinia

Pinia is the official state management library for Vue.js. It provides a simple and intuitive API with full TypeScript support, devtools integration, and modular design. Pinia replaces Vuex as the recommended state management solution for Vue 3.