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.

Looking for hackers with the skills:

perl mojolicious http websockets

This project is part of:

Hack Week 15

Activity

  • almost 8 years ago: kraih added keyword "perl" to this project.
  • almost 8 years ago: kraih added keyword "mojolicious" to this project.
  • almost 8 years ago: kraih added keyword "http" to this project.
  • almost 8 years ago: kraih added keyword "websockets" to this project.
  • almost 8 years ago: kraih started this project.
  • almost 8 years ago: kraih originated this project.

  • Comments

    • kraih
      almost 8 years ago by kraih | Reply

      The feature is done and has been released with Mojolicious 7.27.

    Similar Projects

    Create object oriented API for perl's YAML::XS module, with YAML 1.2 Support by tinita

    Description

    YAML::XS is a binding to libyaml and already quite old, but the most popular YAML module for perl. There are two main issues:

    • It uses global package variables to influence behaviour.
    • It didn't implement the loading of types like numbers and booleans according to the YAML spec (neither 1.1 nor 1.2).

    Goals

    Create a new interface which works object oriented. Currently YAML::XS exports a list of functions.

    • The new API will allow to create a YAML::XS object containing configuration influencing the behaviour of loading and dumping.
      • It keeps the libyaml parser and emitter structs in memory, so repeated calls can save the creation of those structs
    • It will by default implement the YAML 1.2 Core Schema, so it is compatible to other YAML processors in perl and in other languages
    • If I have time, I would like to add the merge << key feature as an option. We could then use it in openQA as a replacement for YAML::PP to be faster.

    I already created a proof of concept with a minimal functionality some weeks before this HackWeek.

    Resources


    Jenny Static Site Generator by adam.pickering

    Description

    For my personal site I have been using hugo. It works, but I am not satisfied: every time I want to make a change (which is infrequently) I have to read through the documentation again to understand how hugo works. I don't find the documentation easy to use, and the structure of the repository that hugo requires is unintuitive/more complex than what I need. So, I have decided to write my own simple static site generator in Go. It is named Jenny, after my wife.

    Goals

    • Pages can be written in markdown (which is automatically converted to HTML), but other file types are also allowed
    • Easy to understand and use
      • Intuitive, simple design
      • Clear documentation
      • Hot reloading
      • Binaries provided for download
    • Future maintenance is easy
      • Automated releases

    Resources

    https://github.com/adamkpickering/jenny