Mojolicious is a web development toolkit and framework built around an event loop. That has many performance and scalability advantages, but can also make debugging slow code a bit of a challenge.
Especially in big projects like openQA, where Devel::NYTProf can be a bit tricky to use, it would be nice to have more built-in diagnostics tools at the event reactor level. Mojo::UserAgent already has very good diagnostics features with MOJO_USERAGENT_DEBUG, and we should be able to do something similar for Mojo::IOLoop.
The Mojolicious web development toolkit is currently limited to using TCP/IP sockets for its HTTP/WebSocket client and server. For most web services that's more than enough, but for containerized applications and IPC, UNIX domain sockets could provide significantly better performance and security.
Use cases would be for example faster communication between Mojolicious application servers and NGINX reverse proxies, or a WebSocket alternative to the D-BUS message bus currently being used by openQA.
Minion, the job queue of the Mojolicious web framework, currently has to be administrated with command line tools. I want to build an Admin UI that will make the most common maintenance tasks, such as restarting a large number of failed jobs, a lot more comfortable.
To make it easier to debug openQA and Cavil i want to build a plugin similar to the mod_status Apache module for the Mojolicious web framework. Figuring out how to combine HTTP and WebSockets should be interesting. If time permits i also want to make it look a little bit like the Minion Admin UI from my last HackWeek project.
The KEF LS50 Wireless are audiophile grade powered speakers that are fairly Linux friendly. But so far they can only be configured via an Android/iOS mobile app. I want to reverse engineer the custom binary protocol used by the apps, and build a simple Linux application to reconfigure things like DSP settings on the fly from the terminal.