Skip to content

Latest commit

 

History

196 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GuacPanel Logo

GuacPanel - Laravel Vue Admin Starter Kit

Laravel Vue.js Tailwind CSS License

An opinionated Laravel admin starter kit built with Vue.js, Inertia.js and Tailwind CSS.

Most starter kits give you authentication and a dashboard. This one gives you the things an admin panel needs on day 90: an audit trail of who changed what, login history, live sessions you can terminate, guarded and logged impersonation, scheduled backups, health checks, and a Cmd/Ctrl+K palette that searches your pages, actions and data.

Two things make it different from the alternatives:

  • You own the frontend. These are Vue files you edit, not PHP that renders someone else's components. The shadcn-vue layer sits behind wrappers with a documented contract (docs/ui-contract.md), so the component library is replaceable without touching a single page.
  • It is built to be cut down. A starter kit is forked and stripped. Features come out along documented seams (REMOVING.md), and a test cross-checks every route the frontend calls against the ones that exist, so a removal that breaks something fails your build instead of a user's request.
Dashboard Dark Mode
Settings Personalization

Features

  • 🔐 Authentication & Security

    • Secure login with Laravel Fortify
    • Passwordless magic link authentication
    • Social Authentication with Laravel Socialite
      • Google
      • GitHub (Will work with local dev callback)
      • Facebook (Will work with local dev callback)
      • LinkedIn (Will work with local dev callback)
    • Two-factor authentication (2FA) via Laravel Fortify
    • Role-based permissions with Spatie Permission
      • Visual role and permission management
      • User role assignment interface
    • Session and security management
      • Active sessions overview
      • Login history tracking
      • Password policies enforcement
  • 🎨 Interface & Design

    • shadcn-vue primitives behind a wrapper layer, so pages stay decoupled from the component library — see docs/ui-contract.md
    • Dark/Light mode with system preference detection
    • Responsive design with Tailwind CSS v4
    • Command palette on Cmd/Ctrl+K, searching pages, actions and your data
    • Auto-generated avatars via Laravel Avatar
    • Customizable theme settings
  • 📊 Data Visualization

    • Interactive charts with Unovis v1.6
      • Line, Area, Bar, Donut and Sparkline
      • Responsive and mobile-friendly
      • Themed by the app's design tokens, so charts follow light/dark mode
    • Shared legend, tooltip and axis formatting
  • 📊 Data Tables

    • Modern tables with @tanstack/vue-table v8
      • Server-side pagination
      • Column sorting
      • Search and filtering
      • CSV export and bulk actions
    • Row action menus with confirmation dialogs
  • 📁 File Management

    • Drag & drop uploads with FilePond v4
      • Image preview
      • File type validation
      • Size restrictions
    • Multiple file selection
  • 🔄 System Features

    • Backup management via Spatie Backup
      • User-friendly dashboard
      • One-click backup creation
      • Backup download
    • Activity logging with Laravel Auditing
      • User action tracking
      • Data change history
    • Security event monitoring
  • 🔔 Real-time Notifications (Laravel Reverb)

    • Live, in-app notifications via WebSockets (Reverb)
    • Demo mode toggle via APP_NOTIFICATIONS_IN_DEMO_MODE
    • Run locally with php artisan reverb:start

Quick Start

Prerequisites

  • PHP >= 8.3
  • Node.js & NPM (Latest LTS)
  • Composer

Installation

  1. Clone the repository
git clone https://github.com/otatechie/guacpanel-tailwind.git
cd guacpanel-tailwind
  1. Install dependencies
composer install
npm install
  1. Set up environment
cp .env.example .env
php artisan key:generate
  1. Configure your database in .env
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=your_database
DB_USERNAME=your_username
DB_PASSWORD=your_password
  1. Run migrations and seed
php artisan migrate
php artisan db:seed
  1. Start development servers
npm run dev
php artisan serve

🎉 That's it! Visit http://localhost:8000 to see the app in action.

Default login

Seeding creates two accounts (configurable via the SEED_* variables in .env):

Account Email Password
Superuser ota@example.com password
Regular user user@example.com password

🔗 External Resources

Contributing

We welcome contributions! Please see our Contributing Guide for details.

License

MIT License

About

An opinionated Laravel starter kit built with Vue.js, Inertia.js, and Tailwind CSS including authentication, admin dashboard, and essential features for building modern web applications.

Topics

Resources

Contributing

Security policy

Stars

187 stars

Watchers

1 watching

Forks

Releases

Used by

Contributors

Languages