Alternative to Disqus Needed More Than Ever


#8

@stiobhart I installed Isso for my work blog comments as I cannot let the comments go outside the company via Disqus, etc. And I love it. Installing was easy for me as I serve my blog and comments from the same machine.

A big +1 for Isso for supporting Markdown! Writing code on Disqus is a pain.

I want to now switch to Isso on my public blog too. I’ve never dealt with hosting services (my public blog is published by Gitlab.com CI Runner).

What hosting service do you use for Isso comments? Would you be willing to briefly describe the Isso server installation process on an external host? I am all set configuring Isso from client side (i.e. my Hugo theme).

Thanks.


#9

I’ve installed Isso on the same VPS as serves my Hugo site, so it’s self-hosted.

It was a bit of a pain to get working, as the documentation’s a bit vague in places. But, once I’d worked out what I was supposed to be doing, setup was actually fairly straightforward. I was actually planning to write a blog post on the process [as an aide-mémoire for myself, as much as anything else]. If I get it done in the near future I’ll add the link here but in essence, the procedure was:

  1. Setup a Python virtualenv
  2. Change to virtualenv
  3. Install Isso
  4. Configure Isso settings
  5. Export existing comments from Disqus as XML
  6. Import XML into Isso
  7. Config server to proxy /isso URLs to Isso
  8. Create systemd startup script to automatically start Isso on server boot.
  9. Add a couple of lines of code to my Hugo header and single templates, to embed the necessary Isso code
  10. Profit!!!

#10

Thanks.

These points are new to me…

  • Setting up a VPS

and

7. Config server to proxy /isso URLs to Isso
8. Create systemd startup script to automatically start Isso on server boot.

I will tackle those as time comes.


#11

Well, you’ve inspired me to start writing a blog post about how I set it all up. So, watch this space!


#12

Thank you.

I don’t know the level of detail you would go down to in your blog post. But my questions are pretty 101/low-level:

  • What are some good VPS options? Amazon AWS?
  • If the comment server is running on 123.123.123.123:5555, how do I ensure that my blog running on Gitlab servers is able to access that IP and port?
  • Can I use that kind of IP directly? Or do I need to map it to something like foo.example.com via my domain provider’s admin tool?
  • In Isso docs, I came across Nginx and proxy setting. But I have no idea as to what those are and how to configure. I probably will need that as my blog and comment server will be on totally different IPs.
  • Never had to play with systemd as am using Unix based OS only at work where I don’t have admin rights. Would be nice to see an example of how to set that on the VPS.

Phew… just the few 101 questions that I can think of at the moment :slight_smile:


#13

Here you go:

I hope this is some use to you, if you get as far as wanting to set this up on your own server.

In the meantime, some answers to your other questions:

I use Linode. They’ve just introduced a $5/month VPS, which is a good price.

You might run into CORS issues there, because your comments [which are presumably powered by Javascript] are being served from a different domain. You can get round this by twiddling with the response headers your site sends [sorry, can’t rem the technical details at the mo] or by embedding your comments via an <iframe> [which is how Disqus does it]

Yes. If the comments are coming from a different server, you’d have to map a subdomain to the IP address of the other server.

Isso is a Python application. As a humble web server, Nginx can’t directly run Python code itself. So whenever any requests come in for parts of your site [ie. the comments] which need to be handled by Python, the proxy settings tell Nginx to pass those requests over [ie. ‘proxy’ them] to Isso instead. Then Isso processes the info and sends it back to Nginx which displays the results [ie. your comments] on the page.

Covered in my blog post I linked to. Not that complicated to set up, but for that [and most of this stuff, in fact] you would need admin access to a server.


#14

Thank you! That blog post is very useful and provides a lot of new information for me.

Thanks. I have already started with the Amazon AWS free tier. Will be shopping for the best price/value after this ends :slight_smile:

Understood.

OK.

Thanks. I noticed that you went through great effort to explain your Isso setup in full detail. As I am starting from scratch, I will just follow your post and use Caddy instead of Nginx to set up the proxy.


#15

Hi, have you tried GraphComment, maybe yet? It’s a platform that engages and build community on your site, you moderate, track, create discussions, build e-reputation, and more. Give it a go if you want, do tell how you liked it - or not :wink:


#16

I really like Isso’s “look and feel” as well as their implementation of sqlite3 (I regard Fossil as innovative and under-rated) but don’t have time to moderate/watch for spam posts. If I had time, I’d definitely jump in and modify it to suit my needs, adding oAuth, an approval queue, oAuth blacklist, and a way to flag regulars with flags, such as “auto-approve/post replies”.

As for me, I’ve decided I’m just going to go the route of using Discourse. It defeats the “keep it static” or whatever mantra but I’m not worried about being a purist. Easy integration and hassle free management. IMO, Discourse is at the top of the game as far as alternatives to Discuss are concerned.

Just my 2c…


#17

I just started to get a site setup with Disqus integrated. If I permit Disqus to run in Ghostery I get 6 additional trackers detected.

I will be turning that off now, and seeing about integrating one of the other options in this thread.

Thanks for putting together the list of alternatives.


#18

Has someone already looked into firebase?
If the site is hosted on firebase, one could simply just use the API to retrieve comments for each site and have a form to add it via API.


#19

You don’t even have to host the site on Firebase to do this. Here’s a tutorial: https://css-tricks.com/building-a-jekyll-site-part-3-of-3/


#20

Luckily for me [or unluckily, depending on your point of view], my vacuuous rantings only attract the odd comment every week or two, so the lack of advanced moderation tools in Isso hasn’t been a problem.

If someone leaves a comment, I get an email notification containing text of said comment, along with two links; one to click to approve it and one to click to reject it:

The link opens a blank browser window which pops up an “Are You Sure…” type dialogue to confirm the choice:

It’s maybe not as elegant as it might be but, for a site with low comment traffic, it’s not too onerous to keep on top of.


#21

Heh - thanks for the mention…


#22

Fame at last!


#23

to be clear, Isso would NOT work if your site was hosted on a CDN like Netlify, which has no server access or live environment (as far as I know)??? If you did host there, you’d have to use an external server to host and serve the Isso comment system, just like using Disqus (similar in practice). I wonder if it would be worth the speed hit to set Isso up in such a way. I guess you could make that portion of the page lazy load too.


#24

Since this thread started Netlify has released an open source GoTell commenting system.


#25

Oh yea I remember tripping over that. Has anyone successfully integrated it? The Readme isn’t too helpful and it says you need the run the api off a server… so… how does that work with Netlify, which is serverless.


#26

Dunno, AWS lambdas maybe? not really a server, but does allow free code execution with parameters. It may suffice…


#27

Wa-hey guys! Monty here. Go-Tell seems pretty similar to Staticman. While these two are definitely interesting options, they have some unfortunate drawbacks.

I wrote a great summary of the different options mentioned in this thread on my blog. Unfortunately, no exact alternatives to Disqus exist that are affordable and ethical. Cheerio.