ferleal / laravel-adminer
Adminer (by Jakub Vrana) wrapper for Laravel 5.8+
Requires
- php: ^7.1.3
- laravel/framework: ~5.8.0|^6.0|^7.0
Requires (Dev)
- orchestra/testbench: ^3.8|^4.0|^5.0
This package is auto-updated.
Last update: 2024-05-25 10:04:42 UTC
README
Introduction
Laravel 5.8 + wrapper for Adminer. Adminer is a fast single-file database manager/explorer tool written by Jakub Vrana. It's a great replacement for PhpMyAdmin (also supports PostgreSQL, SQLite, MS SQL, Oracle, Firebird, SimpleDB, Elasticsearch and MongoDB).
This package is meant to be used with Laravel as an in-built database manager/explorer. It comes with support for Adminer plugins and themes, which super-charges an already powerful tool.
This package is inspired by: miroc/Laravel-Adminer, senaranya /
laravel-adminer
and
onecentlin/laravel-adminer
The reason to add this package is to keep it up-to-date with Adminer and add plugin support with SQLITE.
Database view with default theme
Table view with 'rmsoft' theme
Plugins Included
Tables-filter
Adds ability to do (fuzzy) search on table names. It's especially useful when you have a large set of tables
Installation
To use this package, run:
composer require ferleal/laravel-adminer
To use Adminer to Laravel routes (e.g. /adminer), update routes/web.php
:
To autologin Adminer with Laravel default connection:
Route::any('adminer', '\Ferleal\Adminer\Http\Controllers\AdminerController@auto');
If you want to manually provide credentials on the UI instead:
Route::any('adminer', '\Ferleal\Adminer\Http\Controllers\AdminerController@index');
if you want to use sqlite you can use is it like this, just watch out to leave it open I usualy only leave it for internal ip.
Route::any('adminer', '\Ferleal\Adminer\Http\Controllers\AdminerController@sqlite');
Of course, you can add any middleware of your choice to restrict usage:
Route::any('adminer', '\Ferleal\Adminer\Http\Controllers\AdminerController@auto') ->middleware(['admin']);
Disabling CSRF Middleware
Adminer doesn't work with VerifyCsrfToken middleware, so it has to be disabled on its route.
In VerifyCsrfToken.php
disable CSRF by adding adminer route to $except
array:
protected $except = [ 'adminer' ];
To add plugins
Adminer supports a host of plugins. See CONTRIBUTING to add a new plugin
Adminer Theme (Optional)
Publish theme file (You may use the default theme without executing this action)
php artisan vendor:publish --provider="Ferleal\Adminer\AdminerServiceProvider"
You may download adminer.css
from Adminer or create custom style, and place it into public/vendor/adminer
folder.
Countions
Beware on leaving Adminer open on production it should used in local or behind a proxy and protected with Laravel Auth middlewares.