This package is a starter kit for laravel breeze with inertia vue stack, so it requires laravel breeze and inertia vue stack
Laravel vien provides laravel inertia vue components, when you install this package, it will generate all the components in resources/js/Components/Vien
directory.
No magic behind the scene, you can customize as much as you want
- Table component with search, sort, filter, pagination, toggle, select and bulk action
- Resource Generator to quickly generate CRUD
- Toggle dark mode and light mode component
- Responsive sidebar component
- Flash message using toast component
- Loading spinner component
- SelectSimple component
- InputDateTime component using flatpickr
- TextArea compoonent
- Toggle switch component
for available components you can check in stubs/inertia-vue/Vien
directory or resources/js/Components/Vien
after vien installed.
here is some screenshot:
- PHP >= 8.2
- Laravel >= 10
- Laravel Breeze Stack Inertia Vue
composer require --dev jhonoryza/laravel-vien
php artisan vien:install
this will copy all vien component scaffolding
after installed successfully you can remove this package from your dev requirement
php artisan vien:update
before using this generator, make sure you have already your new migration and models, example: lets make a posts
table, then run artisan migrate
then you can run the following command to generate the resource
php artisan vien:generate posts
After successfully generating the resource above, then adjust
resources/js/Components/Vien/Utils/menu-items.js
file to add your new navigation menu
,
for example:
import { IconHome } from "@tabler/icons-vue";
//`id value must be unique`
export const menuItems = [
{
id: 4,
title: "Post",
routeName: "posts",
component: "Post",
icon: IconHome
}
]
then run npm run dev
to rebuild
php artisan vendor:publish --tag='vien-config'
php artisan vendor:publish --tag='vien-stubs'
If you've found a bug regarding security please mail jardik.oryza@gmail.com instead of using the issue tracker.
The MIT License (MIT). Please see License File for more information.