TL;DR? Test Prequel here!
What is Prequel exactly?
Prequel is meant to be a database management tool for Laravel to replace the need for separate standalone database tools like phpMyAdmin, Sequel Pro or MySQL Workbench. With its (hopefully) clear and concise UI, Prequel is to be a modern and lightweight database browser/tool ready for the web of the future. Prequel's design is purposefully based on that of Laravel Telescope because (web-)developers today have enough to learn and master already, so let's help eachother out and make sure to not add anything virtually useless to that huge pile of knowledge.
Clear and concise database management
Installation
To install follow the instructions below.
$ composer require protoqol/prequel
$ php artisan prequel:install
/prequel
in your browser to see Prequel in action!
When installation and publishing is done navigate to Updating
composer require protoqol/prequel:v1.2
When using Prequel 1.2 and up you can try and use the auto updater!
And else to update you can use the command specified below.
$ php artisan prequel:update
here!
Issues, bugs and feature requests can be reportedConfiguration
You might have noticed that, while publishing a config file appeared under config/prequel.php
. That configuration file looks something like this.
Note that you can define
PREQUEL_ENABLED
in your .env file.
<?php
[
/*
|--------------------------------------------------------------------------
| Prequel Master Switch : boolean
|--------------------------------------------------------------------------
|
| Manually disable/enable Prequel, if in production Prequel will always be
| disabled. Reason being that nobody should ever be able to directly look
| inside your database besides you or your dev team (obviously).
|
*/
'enabled' => env('PREQUEL_ENABLED', true),
/*
|--------------------------------------------------------------------------
| Prequel Locale : string
|--------------------------------------------------------------------------
|
| Choose what language Prequel should display in.
|
*/
'locale' => env('APP_LOCALE', 'en'),
/*
|--------------------------------------------------------------------------
| Prequel Path
|--------------------------------------------------------------------------
|
| The path where Prequel will be residing. Note that this does not affect
| Prequel API routes.
|
*/
'path' => 'prequel',
/*
|--------------------------------------------------------------------------
| Laravel asset generation suffix and namespace definition
|--------------------------------------------------------------------------
|
| Here you can define your preferred asset suffixes and directory/namespaces.
| Separate with a double backwards slash to define namespace and directory
| location. Everything after the last '\\' will be treated as a suffix.
| Note that the backslash needs to be escaped with an extra backslash
|
| For example
|
| Configuration
| 'suffixes' => [
| 'model' => 'Models\\Model',
| 'seeder' => 'MyMadeUpSeederSuffix'
| ]
|
| When generating for `users` table
| (directory) app/models/UserModel.php
| (qualified class) App\Models\UserModel
| (directory) database/seeds/UserMyMadeUpSeederSuffix.php
|
*/
'suffixes' => [
'model' => 'Models\\',
'seeder' => 'Seeder',
'factory' => 'Factory',
'controller' => 'Controller',
'resource' => 'Resource',
],
/*
|--------------------------------------------------------------------------
| Prequel Database Configuration : array
|--------------------------------------------------------------------------
|
| This enables you to fully configure your database connection for Prequel.
|
*/
'database' => [
'connection' => env('DB_CONNECTION', 'mysql'),
'host' => env('DB_HOST', '127.0.0.1'),
'port' => env('DB_PORT', '3306'),
'database' => env('DB_DATABASE', 'homestead'),
'username' => env('DB_USERNAME', 'homestead'),
'password' => env('DB_PASSWORD', 'secret'),
],
/*
|--------------------------------------------------------------------------
| Prequel ignored databases and tables : array
|--------------------------------------------------------------------------
| Databases and tables that will be ignored during database discovery.
|
| Using 'mysql' => ['foo'] ignores only the mysql.foo table.
| Using 'mysql' => ['*'] ignores the entire mysql database.
|
*/
'ignored' => [
// 'information_schema' => ['*'],
// 'sys' => ['*'],
// 'performance_schema' => ['*'],
// 'mysql' => ['*'],
'#mysql50#lost+found' => ['*'],
],
/*
|--------------------------------------------------------------------------
| Prequel pagination per page : integer
|--------------------------------------------------------------------------
|
| When Prequel retrieves paginated information, this is the number of
| records that will be in each page.
|
*/
'pagination' => 100,
/*
|--------------------------------------------------------------------------
| Prequel middleware : array
|--------------------------------------------------------------------------
|
| Define custom middleware for Prequel to use.
|
| Ex. 'web', Protoqol\Prequel\Http\Middleware\Authorised::class
|
*/
'middleware' => [
Protoqol\Prequel\Http\Middleware\Authorised::class,
],
];
Clear and concise database management
Contributing
See Contributing to see how you can contribute to Prequel!
Contributors
License
Prequel is licensed under the MIT License. Please see License File for more information.