I was going to reply, but really the edit already have the content. But the example wasn't the perfect solution, but a given idea. Something that I already did in the past, a homemade solution for the condominium of the building where I used to live. It works, a old desktop as a server, a port forwarding in the modem and you have yourself the project up.
This project solves a specific problem, we used a lot of opensource tools (from the Linux machine to the web server), and in the end it was there working, solving the issue, collecting the needed signatures for the changes in the building.
But this is my usecase, doesn't mean it's the perfect, neither the best.