{"id":21572223,"url":"https://github.com/cuonggt/laravel-dibi","last_synced_at":"2025-08-21T02:31:15.882Z","repository":{"id":32909562,"uuid":"145694438","full_name":"cuonggt/laravel-dibi","owner":"cuonggt","description":"An elegant GUI database management tool for your Laravel applications.","archived":false,"fork":false,"pushed_at":"2025-05-27T09:48:00.000Z","size":4114,"stargazers_count":55,"open_issues_count":1,"forks_count":12,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-07-28T23:27:41.929Z","etag":null,"topics":["database","laravel","php"],"latest_commit_sha":null,"homepage":"","language":"Vue","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/cuonggt.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2018-08-22T10:36:38.000Z","updated_at":"2025-06-23T13:39:03.000Z","dependencies_parsed_at":"2025-05-20T19:19:22.005Z","dependency_job_id":null,"html_url":"https://github.com/cuonggt/laravel-dibi","commit_stats":{"total_commits":59,"total_committers":5,"mean_commits":11.8,"dds":0.5084745762711864,"last_synced_commit":"796ae1ce30e3a1a43a6708f48510a4c6e1bf1e61"},"previous_names":[],"tags_count":11,"template":false,"template_full_name":null,"purl":"pkg:github/cuonggt/laravel-dibi","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cuonggt%2Flaravel-dibi","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cuonggt%2Flaravel-dibi/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cuonggt%2Flaravel-dibi/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cuonggt%2Flaravel-dibi/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cuonggt","download_url":"https://codeload.github.com/cuonggt/laravel-dibi/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cuonggt%2Flaravel-dibi/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":271416777,"owners_count":24755952,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-21T02:00:08.990Z","response_time":74,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["database","laravel","php"],"created_at":"2024-11-24T11:18:36.779Z","updated_at":"2025-08-21T02:31:15.543Z","avatar_url":"https://github.com/cuonggt.png","language":"Vue","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Dibi\n\n\u003cp align=\"center\"\u003e\n\u003ca href=\"https://github.com/cuonggt/laravel-dibi/actions\"\u003e\u003cimg src=\"https://github.com/cuonggt/laravel-dibi/workflows/tests/badge.svg\" alt=\"Build Status\"\u003e\u003c/a\u003e\n\u003ca href=\"https://packagist.org/packages/cuonggt/laravel-dibi\"\u003e\u003cimg src=\"https://poser.pugx.org/cuonggt/laravel-dibi/license.svg\" alt=\"License\"\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n![screenshot](https://user-images.githubusercontent.com/8156596/115648495-b9360080-a34f-11eb-86c5-4da253046f86.png)\n\nLaravel Dibi is an elegant GUI database management tool for your Laravel applications. It provides a quick access for browsing your database on local/dev server without installing any other applications.\n\n## Installation\n\nYou may install Dibi into your project using the Composer package manager:\n\n```bash\ncomposer require cuonggt/laravel-dibi\n```\n\nAfter installing Dibi, publish its assets using the `dibi:install` Artisan command:\n\n```bash\nphp artisan dibi:install\n```\n\nCurrently, Dibi only supports MySQL. I hope other DB engines like SQL Server, PostgreSQL, SQLite, etc will be supported in near future.\n\nDibi use database connection name `mysql` by default to connect. If you would like to use another database connection name, you may use the `Dibi::useDatabaseConnectionName` method. You may call this method from the `boot` method of your application's `App\\Providers\\DibiServiceProvider`:\n\n```php\n/**\n * Bootstrap any application services.\n *\n * @return void\n */\npublic function boot()\n{\n    parent::boot();\n\n    Dibi::useDatabaseConnectionName('custom_mysql');\n}\n```\n\n### Dashboard Authorization\n\nDibi exposes a dashboard at the `/dibi` URI. By default, you will only be able to access this dashboard in the `local` environment. However, within your `app/Providers/DibiServiceProvider.php` file, there is an [authorization gate](https://laravel.com/docs/8.x/authorization#gates) definition. This authorization gate controls access to Dibi in **non-local** environments. You are free to modify this gate as needed to restrict access to your Dibi installation:\n\n```php\n/**\n * Register the Dibi gate.\n *\n * This gate determines who can access Dibi in non-local environments.\n *\n * @return void\n */\nprotected function gate()\n{\n    Gate::define('viewDibi', function ($user) {\n        return in_array($user-\u003eemail, [\n            'admin@example.com',\n        ]);\n    });\n}\n```\n\n### Upgrading Dibi\n\nWhen upgrading to a new major version of Dibi, it's important that you carefully review the upgrade guide. In addition, when upgrading to any new Dibi version, you should re-publish Dibi's assets:\n\n```bash\nphp artisan dibi:publish\n```\n\nTo keep the assets up-to-date and avoid issues in future updates, you may add the `dibi:publish` command to the `post-update-cmd` scripts in your application's `composer.json` file:\n\n```json\n{\n    \"scripts\": {\n        \"post-update-cmd\": [\n            \"@php artisan dibi:publish --ansi\"\n        ]\n    }\n}\n```\n\n### Customizing Middleware\n\nIf needed, you can customize the middleware stack used by Dibi routes by updating your `config/dibi.php` file. If you have not published Dibi's confiugration file, you may do so using the `vendor:publish` Artisan command:\n\n```\nphp artisan vendor:publish --tag=dibi-config\n```\n\nOnce the configuration file has been published, you may edit Dibi's middleware by tweaking the `middleware` configuration option within this file:\n\n```php\n/*\n|--------------------------------------------------------------------------\n| Dibi Route Middleware\n|--------------------------------------------------------------------------\n|\n| These middleware will be assigned to every Dibi route - giving you\n| the chance to add your own middleware to this list or change any of\n| the existing middleware. Or, you can simply stick with this list.\n|\n*/\n\n'middleware' =\u003e [\n    'web',\n    EnsureUserIsAuthorized::class,\n    EnsureUpToDateAssets::class\n],\n```\n\n### Local Only Installation\n\nIf you plan to only use Dibi to assist your local development, you may install Dibi using the `--dev` flag:\n\n```bash\ncomposer require cuonggt/laravel-dibi --dev\nphp artisan dibi:install\n```\n\nAfter running `dibi:install`, you should remove the `DibiServiceProvider` service provider registration from your application's `config/app.php` configuration file. Instead, manually register Dibi's service providers in the `register` method of your `App\\Providers\\AppServiceProvider` class. We will ensure the current environment is one of specific environments before registering the providers:\n\n```php\n/**\n * Register any application services.\n *\n * @return void\n */\npublic function register()\n{\n    if ($this-\u003eapp-\u003eenvironment('local', 'develop', 'staging')) {\n        $this-\u003eapp-\u003eregister(\\Cuonggt\\Dibi\\DibiServiceProvider::class);\n        $this-\u003eapp-\u003eregister(DibiServiceProvider::class);\n    }\n}\n```\n\nFinally, you should also prevent the Dibi package from being auto-discovered by adding the following to your `composer.json` file:\n\n```json\n\"extra\": {\n    \"laravel\": {\n        \"dont-discover\": [\n            \"cuonggt/laravel-dibi\"\n        ]\n    }\n},\n```\n\n## License\n\nLaravel Dibi is open-sourced software licensed under the [MIT license](http://opensource.org/licenses/MIT).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcuonggt%2Flaravel-dibi","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcuonggt%2Flaravel-dibi","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcuonggt%2Flaravel-dibi/lists"}