The Best Self-Hosted Comment Systems in 2024
The best self-hosted comment systems for a blog or website in 2024. A list of powerful open-source tools.
Table of Contents
When I first published my blog several years ago, I wanted to add commenting functionality. At the time, I chose Commento and quickly realized it didn’t meet my requirements. I then found Commento++, which I also wrote an article about on my blog. That worked well for the most part, but then two things happened:
- I switched my blog from Gatsby.js to Astro.js. Once I enabled View Transitions, often the wrong comments would load and the page behaved strangely overall.
- The Postgres database I was using for Commento++ crashed and wouldn’t restart.
Additionally, Commento++ stopped being developed at the end of 2022. For me, this was the impetus to look for an alternative. I still wanted full control over the data, so only a self-hosted comment system was an option. In this article, we’ll look at the best self-hosted comment systems of 2024:
1. Discourse
Discourse is a feature-rich, open source discussion platform. It can be used for both comments and full-fledged forums and mailing lists. Key features include:
- Infinitely scrolling topic lists
- Real-time notifications and live updates
- Drag-and-drop image uploads
- Single sign-on support
- Granular user trust levels and moderation tools
- Extensible with themes and plugins
Pros
- Highly customizable and extensible
- Modern, mobile-friendly design
- Large library of plugins
- Vibrant developer community
Cons
- Steeper learning curve
- Higher server requirements
- Overkill for simple commenting needs
Best suited for
Discourse is well-suited for building active communities and discussion forums. Its advanced features are ideal for larger sites with high comment volume.
2. Isso
Isso is a lightweight, open source commenting system built on Python. It stores comments in a SQLite database and provides a REST API for integrating into websites. Key features include:
- Anonymous commenting
- Moderation queue and email notifications
- Markdown formatting for comments
Pros
- Easy to set up and use
- Low server requirements
- Privacy-friendly
Cons
- No rich text editor
Best suited for
Isso works well for smaller websites and blogs needing a simple, privacy-respecting commenting feature. Its low requirements make it ideal for hosting on budget servers.
3. Remark42
Remark42 stands out as a self-hosted commenting system that puts user privacy first while still offering a range of functional features. It supports social logins from various platforms including Google, Twitter, and Facebook without compromising user data. Users can also comment anonymously.
Key Features
- Markdown support with live preview
- Sortable comment threads
- Multi-level nested comments
- Moderation tools with email notification
- Telegram and RSS integration
- Import from Disqus and WordPress
- Multiple SSO options
Pros
- Privacy-friendly
- Fast performance thanks to Go
- Extensive import/export options
- Extensive API and webhook support
- Built-in spam protection
Cons
- More complex setup than other solutions
Best suited for
Remark42 is a good fit for tech-savvy bloggers who want a fast, full-featured commenting engine. The ability to import from other platforms is a big plus. Remark42 is also fully dockerized, making deployment a breeze with a single command. It’s lightweight and requires no external database as all data is stored in a single file.
4. Talkyard
Talkyard is an open source commenting system and forum platform. You can embed it into static websites or use it as a standalone discussion forum. Key features include:
- WYSIWYG editor with image uploads
- Markdown support
- Granular category-based permissions
- Single sign-on with social login
- Spam protection with Akismet
- Email and real-time browser notifications
Pros
- Modern, user-friendly interface
- Extensive feature set
- Anonymous commenting
Cons
- Higher server requirements
Best suited for
Talkyard works well for community-driven websites looking for an all-in-one solution for comments and forums. The notification features are very handy.
5. Coral Talk
Coral Talk is an open source commenting system developed by a team from Vox Media. It offers a range of features including:
- Moderation tools and notifications
- AI for detecting abuse and spam
- Flexible authentication options
- Ability to embed on multiple sites
- Crowd-sourced moderation
- Built for journalists and media companies
Pros
- Battle-tested on large media sites
- Integrates with many services
Cons
- Higher server requirements
- More complex setup
Best suited for
Coral caters to large publications and high-traffic websites that need to manage user-generated content at scale. For most blogs, it’s overkill.
6. Comentario 3
Comentario is a fork of Commento that has been redesigned to offer more features and better performance. It provides user roles, blocking, and avatar uploads, along with various login options.
Key Features
- Support for spam and toxicity detection extensions (Akismet, APILayer SpamChecker, Perspective)
- A redesigned dashboard for easier management
- Nested comments and sticky flags to highlight important discussions
- Import options from other comment systems
- Markdown support
- Email notifications
- UI customization via CSS
Pros
- Easy setup and management
- Fast performance thanks to Go backend
- Active development on Gitlab
- Anonymous commenting
Cons
- No option for reactions
Best suited for
Me (hopefully).
Comentario is a good choice for bloggers who want a simple, easy-to-manage commenting system. Its simplicity and speed are attractive for small to medium-sized sites. With Postgres support, it should scale well for larger sites too.
I debated for a long time whether to use Remark42 or Comentario. Ultimately, I chose Comentario because since version 3.7.0 it also offers the ability to add names to anonymous comments. I also thought it was the more natural choice as a continuation of Commento and it promised an easy migration of the Commento database.
The latter point didn’t quite pan out in my case (coming from commento++). Unfortunately, many comments have not yet made it into the new database. Luckily there is also a JSON import, but I still need to dig through my old server data to see if I can find all the comments somewhere.
Installation
Installing Comentario is relatively straightforward. Here are the steps:
- Create directories and config files
mkdir comentario
cd comentario
touch docker-compose.yml
touch secrets.yaml
mkdir db
- Configure docker-compose.yaml
services:
db:
container_name: comentario-db
image: postgres:16-alpine
environment:
- POSTGRES_DB=postgres
- POSTGRES_USER=postgres
- POSTGRES_PASSWORD=password
networks:
- internal
restart: unless-stopped
volumes:
- ./db:/var/lib/postgresql/data
app:
container_name: comentario-app
image: registry.gitlab.com/comentario/comentario:v3.7.0
depends_on:
- db
environment:
- BASE_URL: https://domain.com
- SECRETS_FILE: "/secrets.yaml"
networks:
- internal
- proxy
# if no proxy is used, map a free port to 80
# ports:
# - "8080:80"
restart: unless-stopped
volumes:
- ./secrets.yaml:/secrets.yaml:ro
networks:
internal:
external: false
proxy:
external: true
name: proxy
Change BASE_URL
and network settings.
- Configure secrets.yaml with database and SMTP settings (optional)
postgres:
host: db
port: 5432
database: postgres
username: postgres
password: password # password from docker-compose.yml
smtpServer:
host: abc.host.net
port: 465
username: mail@domain.de
password: securePassword
encryption: ssl
Of course you have to adjust the information here. The smtpServer
information is optional, but if you have this information, then comments will also be sent by email. You can use for example an email from Netcups shared web hosting.
Demo
A Live-‘Demo’ can be found here.
Other Alternatives
There are many other options for adding comments to your website that didn’t make the list above. Some of these include:
Strapi
Primarily a headless CMS that offers comment management through extensions
Supabase
An open source alternative to Firebase providing a database and authentication to build your own commenting.
Giscus
An open source discussion tool based on GitHub that can be embedded into any static site. Comments are stored in a GitHub issue and are not self-hosted.
Summary
Here’s a summary table of the best self-hosted comment systems in 2024 including the other alternatives mentioned:
Name (Sourcecode) | Stars | License | Demo |
---|---|---|---|
Comentario | 36 (Gitlab) | MIT | Demo and here |
Commento++ | 380 | MIT | --- |
Coral Talk | 1.9k | Apache 2.0 | --- |
Discourse | 40.6k | GPL 2.0 | --- |
Giscus | 7.3k | MIT | Example |
Isso | 5k | MIT | Demo |
Remark42 | 4.7k | MIT | Demo |
Strapi | 60.3k | MIT | --- |
Supabase | 66.3k | Apache 2.0 | --- |
Talkyard | 1.7k | AGPL 3.0 | Example |
Conclusion
There’s still no reason to use Disqus. It’s not open source and has poor privacy practices. Choosing the right self-hosted comment system depends on many factors. Each system listed above offers unique advantages and can be tailored to the needs of different online environments. This allows you to not only maintain control over your data, but also enhance the user experience on your site.
I hope this article helps you find the right commenting system for your website. If you have any questions or suggestions, please leave a comment below.