GithubHelp home page GithubHelp logo

vektormuhammadlutfi / laravel-easypanel Goto Github PK

View Code? Open in Web Editor NEW

This project forked from reziamini/laravel-easypanel

0.0 1.0 0.0 14.52 MB

A beautiful and flexible admin panel based on Livewire for Laravel

PHP 73.55% Blade 26.45%

laravel-easypanel's Introduction

Scrutinizer Code Quality Build Status

EasyPanel

EasyPanel is a beautiful, customizable and flexible admin panel based on Livewire for Laravel.

EasyPanel screenshots

Features :

  • Easy to install
  • Create CRUD for every model in 1 minute
  • Manage route prefix and addresses
  • Beautiful UI/UX with AdminMart template
  • Add/remove Admins with command line
  • Every UserProviders and Authentication classes are customizable and you can change them
  • You can create your own routes and customize our views and components
  • Manage pagination count
  • Real time validation with Livewire
  • Customize every actions in your project
  • A small and beautiful TODO (You can disable it in your config)
  • Create a nice and responsive view based on your data in config file for every CRUDs
  • Custom validation based on config file
  • Ajax search with Livewire in every column you want

Install:

  1. Install the Package in Laravel project with Composer.
composer require rezaamini-ir/laravel-easypanel
  1. Publish EasyPanel files with one command :
php artisan panel:install

Congrats! You installed the package, follow docs.

Usage:

You can create a CRUD for a model, use todo feature, settings option and etc.

Make a CRUD:


1 . Create a CRUD config with this command:

php artisan panel:config [name] -m [MODEL]

[name]: action name (should be equals to model name in lower case word) [MODEL]: Model name

2 . Edit CRUD config in resources/cruds/name.php based on your needs

3 . Run CRUD creator command to make CRUD files and components :

php artisan panel:crud [name]

Now You have a few files and components for CRUD action of this model

  • Livewire PHP Component stored in : app/Http/Livewire/Admin/Name
  • Livewire Blade Component stored in : resources/views/livewire/admin/name

You are free to make change in components and edit them.

Manage Admins


in default EasyPanel use is_superuser column in your users table to detect an admin and you can customize it.

Run this command out to make a user as an admin:

php artisan panel:add [user_id]

To remove an admin you can execute this command:

php artisan panel:remove [user_id]

[user_id] : It's id of user that you want to make as an admin

These commands use UserProvider class in EasyPanel and You can use your own class instead of that and pass it in config file

Config

Key Value Description
enable bool Module status
todo bool TODO feature status
user_model string Address of User model class
auth_class string Address of user authentication class
admin_provider_class string Address of user provider class
admin_provider_class string Address of user provider class
column string That column in users table which determine user is admin or not
redirect_unauthorized string If user is unauthenticated it will be redirected to this address
route_prefix string Prefix of admin panel address e.g: if set it admin address will be : http://127.0.0.1/admin
pagination_count int Count of data which is showed in read action
actions array List of enabled action which you have created a crud config for them.

What we use in this package:

Contribution:

If you feel you can improve our package You are free to pull request & submit issue :)

V2 Path

  • ACL System
  • Logging System
  • File manager
  • RTL Style
  • Translation
  • Custom menu
  • Relational inputs
  • Separate CRUDs config
  • Make Command lines readable
  • More input types & editors
  • Add some unit tests

laravel-easypanel's People

Contributors

reziamini avatar imanghafoori1 avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.