It came time to creat my band’s website, and I didn’t want to be the only one responsible. So I needed something with a drag-n-drop editor.

I realized, hey, I have a super cool self hosting setup, can’t I find something which will do this for me?

This led to a bunch of frustration, because the self-hosting ecosystem is filled with PHP tools that really assume they are the only thing running on your server, and are difficult to set up otherwise. Or maybe it’s just that I’m not very experienced with PHP. Probably that.

Anyway, I wanted something which ran behind a server, on a port, not in some background service. I could see the source code easily in whatever folder i clone the repo into, and in my Nginx config I could simply point some subdomain (e.g. sites.dissonant.info) to that port. Easy peazy, right?

Problem is, I couldn’t really find something quite like that, at least in the few hours I tried with different apps. I had come across Grapes.js but it was JUST a drag-n-drop editor, not a full CMS, and I really didn’t want to write a whole CMS.

But over time I realized, maybe this was my best option, and I undertook a project to write a Sinatra CMS wrapper for the actual saving / hosting side of things.

Long of the short of it, I ended up with Dissonant CMS which is a self-hosted CMS you can use to collaboratively edit / host websites.

There’s more info on the README there.

Maybe it’s useful for someone.