Download the PHP package robsontenorio/lighthouse-dashboard without Composer
On this page you can find all versions of the php package robsontenorio/lighthouse-dashboard. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download robsontenorio/lighthouse-dashboard
More information about robsontenorio/lighthouse-dashboard
Files in robsontenorio/lighthouse-dashboard
Package lighthouse-dashboard
Short Description Dashboard for Laravel Lighthouse GraphQL.
License MIT
Homepage https://github.com/robsontenorio/lighthouse-dashboard
Informations about the package lighthouse-dashboard
Dashboard for Laravel Lighthouse GraphQL
:warning: WORK IN PROGRESS! BREAKING CHANGES ARE EXPECTED!
This package adds a standalone analytics dasbhoard with metrics collected from Laravel Lighthouse GraphQL Server.
Requirements:
- PHP >= 7.4
- Laravel >= 8.x
- Laravel Lighthouse >= 5.x
Questions? Join us in Slack Channel.
Install
Require the package.
Publish package assets and config file.
Configure the package.
Run package migrations.
Open the dashboard.
To keep the assets up-to-date and avoid issues in future updates, we highly recommend adding the command to the post-autoload-dump section in your composer.json
file:
Note about phpunit tests
This dashboard collects metrics by listening Nuwave\Lighthouse\Events\ManipulateResult
. Make sure to disable this on your parent TestCase
, in order to prevent metrics collecting while testing your app.
How does it works?
See more ...
This package enables built-in `Tracing` extension from Laravel Lighthouse GraphQL Server. So, every operation automatically is profiled with its execution metrics.
- GraphQL request is made.
- Dashboard listen to `ManipulateResult` event and collect metrics from current operation.
- Metrics are stored on dashboard.
The GraphQL server performance is not affected by this package, once metrics are collect after response is sent by server. You can also disable tracing output from server response. See "Configurations" section.
Configurations
See more ...
/config/lighthouse-dashboard.php
Tests
See more ...
If you need to tweak UI see "Local development" section.
Local development
See more ...
Once this package includes UI, the only way to see it is by running it through target app.
### Uninstall
If you previous installed this package, **first uninstall it from target app**.
Remove this entry from `composer.json`.
Remove package.
Remove package public assets from target app.
### Install locally
Clone the repository, then on target app add to `composer.json`
Require local package version.
Then, create a symlink from package vendor folder to app public assets folder.
From target app enter to package vendor folder.
Install frontend dependencies and start it on dev mode.
Now all assets built inside package vendor folder will be symlinked to target app public vendor folder.
Then point to http://localhost:3000/lighthouse-dashboard/
## Reference model
Roadmap
- [ ] Sumary for operations per clients.
- [ ] UI navigation with anchor href when clicks on type return.
- [ ] Add option to guard dashboard.
- [ ] Add option for retention period.
Credits
Developed by Robson Tenório and contributors.
This work is highly inspired on Apollo Studio and powered by:
- Laravel.
- Lighthouse GraphQL.
- InertiaJS.
- Vuetify.
All versions of lighthouse-dashboard with dependencies
inertiajs/inertia-laravel Version ^0.2.12|^0.6.9
nuwave/lighthouse Version dev-master||^5