Hosted SaaS solution have some great advantages, perhaps the most important of which is that hopefully the company behind the product is able to maintain a sustaining business model through charging subscription fees, thus ensuring that the solution will be actively maintained and developed for a long time to come. But, this is also a bit of an illusion since companies can fold just as easily as non-profit foundations, or can be gobbled up by a bigger fish in the sea. In fact, in addition to just being expensive, our main gripe with SaaS solutions is that if the company goes under, in the worst case it takes with it all of YOUR hard work, and in the best case you are left with some backup of your data and a broken app.
Self-hosting does have some obvious advantages over a hosted SaaS solution:
- You are not sharing data with another company
- The solution does not rely on the healthy workings and security of said company
- A self-hosted, open-source solution often spreads faster and is able to build a larger community of users and developers, simply because it does not (usually) come with a subscription fee
- If your budget for given project dries up, you may end up not using the product any more but at least you don't end up with all of your work disappearing - and if you want, you can pick up where you left off months or years later
Below we summarize our favorite self-hosted software solutions. All of these options are:
+ actively developed with a large user base and dev community
+ free (or very cheap) to install on your own server
Disqus is not self-hosted but it is free. However, we REFUSE to work with disqus. In addition to the numerous negative posts about the methods disqus uses to track your activity and make YOU into a product much like how today's social media giants do, our own experience shows that including Disqus on your site significantly slows down the load times simply because Disqus loads literally dozens of assets in the background - and executes a host of scripts to get going.
GraphComment.com <-- ♥♥♥ our favorite!
GraphComment is a commenting service much like Disqus with a free plan - but unlike Disqus, we actually like GraphComment. It is super easy to set up and integrate into your site, and it doesn't track your activity or slow down your site load times. It is a French company and I wish them the best of luck, hopefully they will be around for a while.
Discourse <-- We ♥ it!
They offer a subscription service but the core product is open-source and free to install on your own server. This is a very popular solution with many users and a strong developer community behind it.
+ Mature, well-rounded product with lots of options
+ Large community of devs and users
- The official installation method is a fairly large docker image that consumes a lot of server resources
- Somewhat slow compared to other solutions
- If you wish to run several discourse instances on one server (for example, for different domains) then you have two options: follow the fairly complex recommended solution or just run two separate containers, which requires 2x as many server resources; either way, this is not as simple as it could be
Installing one instance of discourse was easy. We ended up using different solutions later on for this blog, but we do have a discourse instance running for one of our communities.
NodeBB <-- ♥♥ great solution for stand-alone forums!
This has a fairly large and active community behind it (check out their GitHub page).
+ Super-fast, funky UI
+ Easy on server resources
- A little bit tricky to install
We like NodeBB - but it didn't end up being our choice for this blog because it didn't integrate well with Ghost. However, it is a great solution for a stand-alone discussion/forum site!
We are keeping an eye on:
This looks very promising and something to consider. Unfortunately it seems to have been stuck in beta for years. Perhaps the two guys who started it are just unable to cope. Hopefully they will be able to make progress and create a good financial framework for developing Flarum into a mature solution.
This is a project of the Mozilla foundation. It seems to have a lot of hype around it, but it's hard to even find a demo of it. I can't even figure out the technology stack behind it. So for now we're staying away.
Knowledge-Base / Wiki Platforms
BookStack <-- ♥♥♥ our favorite!
BookStack is hands down our favorite kb platform. We tried many! But BookStack is great because it is super simple to get running, and even easier to share knowledge with it's WYSIWYG editor. It's built using Laravel (PHP) and can use a MySQL as a database. It's easy on server resources and runs nice and fast. https://www.bookstackapp.com/