romanzipp / Laravel-Queue-Monitor

Monitoring Laravel Jobs with your Database
https://packagist.org/packages/romanzipp/laravel-queue-monitor
MIT License
696 stars 92 forks source link

Any plans for GUI? #16

Closed damms005 closed 3 years ago

damms005 commented 4 years ago

Would be nice to have a nice TailwindCss-powered UI for the Monitor model. Any plans?

P.S.: I am not good with designing UI/prototyping but if @romanzipp /contributors are not readily available to work on this and @romanzipp does not mind including it,then I am available to work with anyone that can help protype (e.g. using Figma?) a nice and clean UI for this awesome package

romanzipp commented 4 years ago

I've already thought about a GUI but I don't know which would be best. Standalone like Laravel Horizon, Vue component, Blade component.. What are your thoughts on this?

damms005 commented 4 years ago

Depends on how much minimalism we are willing to trade-off for efficiency.

At the peak of efficiency (something that devs will like and want to use, better DX), I will say we should go with a full blown Vue-powered front-end with live updates (using simple server-side sockets implementation like this).

At the other farther end of the spectrum - minimalism, we can simply go with a simple paginated blade template (like attached below screenshot of something I hurriedly did for my Voyager-powered admin backend):

image

romanzipp commented 4 years ago

I've started working on a GUI, see #21 Would love to get some feedback in this. Currently it's only a simple blade view

underdpt commented 4 years ago

I think a blade view is good as it helps to integrate it easily with your custom proyect, leaving the developer handle permissions, routing, etc. I would go for minimal dependencies (framework) and then we should be able to extend the blade view to user our current javascript/css frameworks, or also contribute different views with different frameworks.

romanzipp commented 4 years ago

I've merged #21 and released 2.0.5. Some documentation can be found in the README.

I'll leave this issue open for further discussion 👍