π‘ Summary
A modern admin dashboard built with Shadcn UI and Laravel, featuring modular architecture and CI/CD workflows.
π― Target Audience
π€ AI Roast: βPowerful, but the setup might scare off the impatient.β
Risk: Medium. Review: shell/CLI command execution; outbound network access (SSRF, data egress); filesystem read/write scope and path traversal. Run with least privilege and audit before enabling in production.
Laravel Shadcn Admin Dashboard
A modern, responsive, and accessible admin dashboard built with Shadcn UI, Laravel, and Vite. This project combines the elegance of Shadcn's UI components with the robustness of Laravel's backend framework, providing a seamless development experience.

This project is inspired by Shadcn-admin and adapted to work seamlessly with Laravel and Inertia.js.
Features
- Light/dark mode
- Responsive
- Accessible
- With built-in Sidebar component
- Global Search Command
- 10+ pages
- Extra custom components
Tech Stack
UI: ShadcnUI (TailwindCSS + RadixUI)
Backend: Laravel 12.x
Frontend Integration: InertiaJs
Build Tool: Vite
Type Checking: TypeScript
Linting/Formatting: Eslint & Prettier
Icons: Tabler Icons
Run Locally
- Clone the project
git clone git@github.com:binjuhor/shadcn-lar.git
- Go to the project directory
cd shadcn-lar
- Install dependencies
- Install JavaScript dependencies:
pnpm install
- Install PHP dependencies:
composer install
- Data migration
php artisan migrate
- Start the dev Frotnedend and Backend server
- Start the Vite development server:
pnpm run dev
- Start the Laravel development server:
php artisan serve
- Open your browser and visit http://localhost:8000 to view the dashboard.
CI/CD Guide
This project includes automated CI/CD workflows using GitHub Actions. The workflows are located in the .github/workflows/ directory and provide continuous integration and deployment capabilities.
Available Workflows
1. Tests Workflow (test.yml)
Automatically runs on every push to the main branch and performs:
- PHP Setup: Uses PHP 8.2 with required extensions
- Environment Setup: Copies
.env.exampleto.envand generates application key - Dependencies: Installs Composer dependencies
- Frontend Build: Installs Node.js dependencies and builds production assets
- Database Setup: Creates SQLite database for testing
- Test Execution: Runs PHPUnit/Pest tests (unit and feature tests)
2. Deploy Workflow (deploy.yml)
Automatically deploys to production server on successful pushes to main branch:
- Code Deployment: Uses rsync to sync code to production server
- Frontend Build: Builds production assets before deployment
- Dependencies: Installs/updates Composer dependencies via Docker
- Database Migration: Runs Laravel migrations
- Cache Management: Clears and optimizes application cache
- Docker Integration: Restarts Docker containers for updated services
Required Secrets
For the deployment workflow to work, configure these GitHub repository secrets:
PRIVATE_KEY- SSH private key for server accessSSH_HOST- Production server hostname/IPSSH_USER- SSH username for server accessWORK_DIR- Application directory path on serverDOCKER_DIR- Docker compose directory path on server
Note: Ensure your server is set up to allow SSH access using the provided private key. Public key should be added to the server's ~/.ssh/authorized_keys. Folder permissions should allow the SSH user to read/write as needed..ssh folder should have 700 permissions and authorized_keys file should have 600 permissions.
Local Development Workflow
-
Before Committing:
# Run tests locally php artisan test # Build frontend assets pnpm run build # Check code formatting pnpm run lint -
Push to Main:
- Tests workflow runs automatically
- If tests pass and on
mainbranch, deployment begins - Monitor workflow progress in GitHub Actions tab
Workflow Customization
To modify the CI/CD behavior:
- Test Configuration: Edit
.github/workflows/test.yml - Deployment Steps: Edit
.github/workflows/deploy.yml - Add Quality Checks: Consider adding code style checks, static analysis, or security scans
Modular Architecture
This project uses nwidart/laravel-modules for a modular monorepo architecture. Each module is self-contained with its own controllers, models, migrations, and React frontend.
Available Modules
| Module | Description | |--------|-------------| | Finance | Personal finance tracking (accounts, transactions, budgets) | | Invoice | Invoice management | | Permission | Roles and permissions management | | Settings | Application settings | | Blog | Blog posts and categories | | Ecommerce | Products, orders, and categories | | Notification | User notifications |
Module Commands
Create a New Module
# Basic module scaffolding php artisan module:scaffold ModuleName # With CRUD scaffolding (model, migration, policy, controller, pages) php artisan module:scaffold ModuleName --with-crud # Specify entity name for CRUD php artisan module:scaffold Inventory --with-crud --entity=Product # Preview without creating files php artisan module:scaffold ModuleName --dry-run
Generate a Standalone Site from Modules
Extract selected modules into a completely new Laravel project:
# Create a finance-only site php artisan site:generate FinanceApp --modules=Finance --output=~/Projects # Create a multi-module site php artisan site:generate AdminPanel --modules=Finance,Settings,Permission --output=~/Projects # Preview what would be created php artisan site:generate TestApp --modules=Finance --dry-run
The site:generate command:
- Copies base Laravel+React project structure
- Includes only selected modules
- Updates all configuration files (composer.json, tsconfig.json, vite.config.js)
- Removes unused module references
- Shows next steps after generation
Enable/Disable Modules
# Enable a module php artisan module:enable ModuleName # Disable a module php artisan module:disable ModuleName # List all modules php artisan module:list
Module Structure
Modules/
βββ ModuleName/
βββ app/
β βββ Http/Controllers/
β βββ Models/
β βββ Policies/
β βββ Providers/
βββ config/
βββ database/
β βββ migrations/
β βββ seeders/
βββ resources/
β βββ js/
β βββ pages/
β βββ types/
βββ routes/
β βββ api.php
β βββ web.php
βββ module.json
Roadmap
Here are some of the planned features for future updates:
-
User Permissions & Roles: Manage user roles and permissions with a flexible and intuitive system.
-
Profile Manager: Allow users to update their profiles, including personal information and security settings.
-
Post & Page Manager: Create and manage dynamic posts and pages with a rich text editor.
-
Theme & Plugin Manager: Easily install and manage themes and plugins to extend functionality.
-
File & Media Manager: A powerful file and media manager for handling uploads and organizing assets.
Author
This project was crafted with π€ by @binjuhor
License
This project is open-source and licensed under the MIT License. Feel free to use, modify, and distribute it as needed.
Pros
- Modern and responsive design.
- Modular architecture for easy customization.
- Built-in CI/CD workflows for automation.
- Supports both frontend and backend development.
Cons
- Requires knowledge of Laravel and Inertia.js.
- Setup may be complex for beginners.
- Dependency on multiple technologies.
- Limited documentation on advanced features.
Related Skills
pytorch
SβIt's the Swiss Army knife of deep learning, but good luck figuring out which of the 47 installation methods is the one that won't break your system.β
agno
SβIt promises to be the Kubernetes for agents, but let's see if developers have the patience to learn yet another orchestration layer.β
nuxt-skills
SβIt's essentially a well-organized cheat sheet that turns your AI assistant into a Nuxt framework parrot.β
Disclaimer: This content is sourced from GitHub open source projects for display and rating purposes only.
Copyright belongs to the original author binjuhor.
