I've been toying around with building a super simple Hacker News-like comment system for my static site on top of Fauna... all I just want is something plug and play, and none of these do that. I'm also surprised no one's released a simple open source Fauna example yet (or at least it's not listed on this site).
Is there a reason for that / Is Fauna not production-ready?
https://fauna.com/ is a new database that makes it relatively quicker to build things like commenting systems.
I consider something like Disqus plug-and-play. But I think that I would really want is something built in Node that I can import, add configs, and hook into my front-end. FaunaDB comes close, but I would still need to build the comments and moderation UI etc. It would be nice if someone fleshed out a more full commenting example on top of Fauna, but I haven't come across that yet, so I guess I'll eventually need to do that.
My site is just a super simple site that runs on top of Vercel w/ Svelte/Sapper
Thanks for the Fauna link. Looks interesting, I started thinking about using it for some "backoffice" related things. Probably will wait a year or more though, to find out how Fauna evolves — 3 months ago: "$27M [funding] and New Leadership".
About using it for a commenting system: What comes to my mind, is that outgoing bandwidth is a little bit expensive: 0.1$ per GB. So, maybe Fauna is a good idea for one's own personal commenting system — and, not such a good idea for someone who builds a SaaS commenting system and wants to keep the costs down.
> something built in Node that I can import, add configs, and hook into my front-end
Maybe something like the below? But not for Gatsby, instead, for the framework you use? (What frameworks do you use / like, if I may ask?)
import TalkyardCommentsIframe from '@debiki/gatsby-plugin-talkyard';
// And where the comments shall appear:
<TalkyardCommentsIframe />
Wow looks really nice.
Was looking for something like it or maybe build it my self but then with the matrix protocol and profiles.
But still need to dig in to it, don't know if it would be possible with matrix.
Any thoughts about how to maybe integrate blog comments software like Talkyard (or any of the others) with Matrix?
I'm going to build Mattermost and Slack integrations — primarily to send notifications to chat channels, when something happens at Talkyard.
Maybe there could be a notification to a Matrix channel, once a new blog post reply appears. And in the distant future, maybe it'd make sense to moderate comments, and reply, via /slash commands in a Matrix client?
* * *
If actually storing blog comments — maybe even the blog post itself?, in Matrix somehow, then, I'm thinking it'd be good if the Matrix protocol & storage format, worked with relpies & nested replies. So there could be HackerNews like tree-style discussions
I wonder if it supports that already maybe
B.t.w. if you find time to dig into that, and if you want to & remember, feel free to message me once you know how you'd do, to build something based on Matrix,
I'd be interested in ... in the very distant future ... two-way-sync between a Matrix "database" and a Talkyard database
> When a user submits a comment, echochamber.js will save the comment to the user's LocalStorage, so when they return to the page, they can be confident that their voice is being heard, and feel engaged with your very engaging content. It does not make any HTTP requests. Since LocalStorage is only local, you and your database need not be burdened with other people's opinions.
Self-plug: I would appreciate comments, especially UI-related, about my under-development self-hosted commenting system, linked below. You can comment here on HN, which I will read, or right on the page, too! If you use #bug tag, it will go right into my "bug tracker" (bug.txt)
Ok. I think that'd be nice too — hmm I wonder if there is any commenting system that supports all of: annotations, inline comments & replies, and a discussion comments section.
I use Hyvor Talk (https://talk.hyvor.com/) for a Gatsby site. It supports markdown, custom color scheme, moderation, multiple languages and runs on almost any platform natively etc.
It had a free plan till last month or so. Now, pages with less 5000 views are free. For more viewed sites, some minimal price is charged.
> Comparison table for open-source self-hosted commenting servers.
data.yaml [2] holds the list of OSS alternatives to Disqus. A daily Cron job launches a Python script that extracts GitHub data for each project. DataTables.js [3] is used to render the data in the browser. The web page itself uses Isso [4] for comments.
> one usually wants a lightweight commenting server ... [A few] commenting engines listed on the page are provided by heavy applications
A small ambiguity: There's a difference between being light weight client side, in the browser — versus server side:
1) End users notice the client side in-the-browser performance & light-weighted-ness. Whilst 2) the one who notices app server light-ness is the static site owner, who can save some $ each month.
However the comparisons page doesn't clarify that it apparently has in mind application server light / heaviness (and not browser-side).
My experience running my own comment system is eventually you'll get spammed in bulk. Then, if you didn't make some kind of management UI you'll have to create one or write scripts/queries to try to repair the damage.
This is one of many reasons first switched to wordpress before going static and using disqus. I switched to wordpress because I got tired of having to add features to my blog software (whatever the must have feature of the day was, RSS, Atom, Trackback, etc etc etc..) and because I got spammed and had only written the code for posting comments, not for managing. Wordpress's anti-spam Akismet, failed for me though. Too much spam came through adding to my workload. So I switched to disqus.
At the time, and maybe this is still true, disqus would put the comments in your wordpress database so if you ever decided to quit disqus you still had the comments.
Then eventually I got tired of the extra work of wordpress itself (having to update monthly) and went static + disqus.
I get the entire point is you probably don't like disqus because you're being tracked and/or want a different UX etc, and you should do whatever you want. There is enjoyment making your own systems. I wanted to blog to share things though and maintaining a comment system was time not writing posts.
Most of the spammers target well known engines such as WordPress. If you use a static website with an external comment engine, most of them simply won't find your website.
Unless you're large and popular to warrant custom case, spam en-masse is almost always computer generated and certainly without JavaScript support, you can battle it easily.
Just add an input with value which is submitted when user has no javascript. Change that value via javascript and check for existance server-side.
This has been working well ever since comment spammers became a thing 15 or something years ago. It has not failed me since.
When I use static sites for projects, one of the reasons that I'm doing it is to keep costs down. If I really wanted to have a comment system on a static website, I think what I'd create is a system in which I have a server for the first visitor, but then for every other concurrent visitor, I'd use a P2P WebRTC connection to send the comments over. Signalling servers are free, if you know where to find them. And I can use my own server as a TURN server if needed.
So the model really is: offload whatever you can to the user. Or just don't have comments :)
If the website wasn't static, then I'd simply just use a server.
I‘ve been using commento on my own sites for a bit over a year now. I was initially pleased but development seems to have halted and many pull requests fixing basic features have gone ignored.
I have Webmentions[0] setup for my static site's blog posts, and I also use HyvorTalk[1] for its simplicity and export feature (I could but don't want to host comments myself due to cost vs. usage).
I see people recommending commenting systems here, but have we stopped to consider whether we need comments at all?
My personal experience is that comments are usually content-thin, and not worth reading. I publish my email address prominently, and people who want to tell me something do take the time to email me, and I enjoy the more personal conversation over email as well.
I think for communities like HN, the real content actually is the comments-- or rephrased, HN uniquely stands out amongst other news aggregators because of its community. You could say the community sentiment should be reflected through the content submitted, but I just don’t believe that’s true.
However, I don’t think everything on earth needs comments. I honestly never understood the point of blog posts having comments, but I’ve never run a successful blog that anyone looks at either so maybe I don’t get it.
Agreed, and communities don't outsource their comments. It seems to me that things like Disqus aren't useful, since if you use a third party service for your comments, they're mostly an afterthought and could well be omitted.
Comments help fixing issues in a decentralized way, which is awesome. They also help develop stickiness, like HN (or addiction if you fall into dopamine addiction). Youtube would never be popular without the comments, which help criticize the video and get other viewpoints.
But it seems they aren’t valuable _enough_ that someone would develop a browser extension to comment on any webpage —or, since such extensions have been tried a lot actually, that people would actually use them.
This depends heavily on the website in question and how well the comments are moderated/curated. The Online Photographer [0] is my goto example of a blog where the comments are excellent (and a key part of the value gained from visiting the site). The trick in this case: every comment goes through a moderation queue before it's posted. Some then get featured as part of the article.
72 comments
[ 5.8 ms ] story [ 121 ms ] threadIs there a reason for that / Is Fauna not production-ready?
What does plug-and-play mean to you? What's complicated with the ones you've tried?
Actually Talkyard is a bit inspired by Hacker News & Reddit — here're some improvements over HN & Reddit: https://www.talkyard.io/-32/how-hacker-news-can-be-improved-... (I'm developing Talkyard).
You have a link to your Fauna site? I never heard about Fauna before.
I consider something like Disqus plug-and-play. But I think that I would really want is something built in Node that I can import, add configs, and hook into my front-end. FaunaDB comes close, but I would still need to build the comments and moderation UI etc. It would be nice if someone fleshed out a more full commenting example on top of Fauna, but I haven't come across that yet, so I guess I'll eventually need to do that.
My site is just a super simple site that runs on top of Vercel w/ Svelte/Sapper
About using it for a commenting system: What comes to my mind, is that outgoing bandwidth is a little bit expensive: 0.1$ per GB. So, maybe Fauna is a good idea for one's own personal commenting system — and, not such a good idea for someone who builds a SaaS commenting system and wants to keep the costs down.
> something built in Node that I can import, add configs, and hook into my front-end
Maybe something like the below? But not for Gatsby, instead, for the framework you use? (What frameworks do you use / like, if I may ask?)
https://www.gatsbyjs.com/plugins/@debiki/gatsby-plugin-talky...> a more full commenting example on top of Fauna [...] I guess I'll eventually need to do that
Be warned, it's more work than what it seems to be :- ) at least more than what I thought it'd be
I'm going to build Mattermost and Slack integrations — primarily to send notifications to chat channels, when something happens at Talkyard.
Maybe there could be a notification to a Matrix channel, once a new blog post reply appears. And in the distant future, maybe it'd make sense to moderate comments, and reply, via /slash commands in a Matrix client?
* * *
If actually storing blog comments — maybe even the blog post itself?, in Matrix somehow, then, I'm thinking it'd be good if the Matrix protocol & storage format, worked with relpies & nested replies. So there could be HackerNews like tree-style discussions
I wonder if it supports that already maybe
B.t.w. if you find time to dig into that, and if you want to & remember, feel free to message me once you know how you'd do, to build something based on Matrix,
I'd be interested in ... in the very distant future ... two-way-sync between a Matrix "database" and a Talkyard database
> All of the commenting, none of the comments.
> When a user submits a comment, echochamber.js will save the comment to the user's LocalStorage, so when they return to the page, they can be confident that their voice is being heard, and feel engaged with your very engaging content. It does not make any HTTP requests. Since LocalStorage is only local, you and your database need not be burdened with other people's opinions.
https://github.com/tessalt/echo-chamber-js
And while it's technically pointless because only you see the extra messages, it was amusing to pretend being part of the live audience.
It's too bad they now removed this feature.
But yeah, not completely open source yet.
http://sm.chg.pw/73/79/73791fc2.html
admin/admin are the captcha-credentials
[1] https://news.ycombinator.com/item?id=24676845
[2] https://dokie.li/scripts/dokieli.js
https://csarven.ca/linked-data-notifications#protocol
Example, with margin notes and comments at the bottom of the article:
https://csarven.ca/dokieli-rww
It's a W3C recommendation, and there are multiple implementations:
https://linkedresearch.org/ldn/tests/summary
<div class="fb-comments" data-href="http://yoursite.com/yourpage” data-width="100%" data-numposts="5" data-colorscheme="light" data-order-by="time"></div>
It had a free plan till last month or so. Now, pages with less 5000 views are free. For more viewed sites, some minimal price is charged.
Besides akismet I don't see a lot of comment/profile spam detection services out there.
> Comparison table for open-source self-hosted commenting servers.
data.yaml [2] holds the list of OSS alternatives to Disqus. A daily Cron job launches a Python script that extracts GitHub data for each project. DataTables.js [3] is used to render the data in the browser. The web page itself uses Isso [4] for comments.
[1] https://github.com/pozitron57/open-source-comments
[2] https://github.com/pozitron57/open-source-comments/blob/mast...
[3] https://github.com/DataTables/DataTables
[4] https://github.com/posativ/isso
A small ambiguity: There's a difference between being light weight client side, in the browser — versus server side:
1) End users notice the client side in-the-browser performance & light-weighted-ness. Whilst 2) the one who notices app server light-ness is the static site owner, who can save some $ each month.
However the comparisons page doesn't clarify that it apparently has in mind application server light / heaviness (and not browser-side).
This is one of many reasons first switched to wordpress before going static and using disqus. I switched to wordpress because I got tired of having to add features to my blog software (whatever the must have feature of the day was, RSS, Atom, Trackback, etc etc etc..) and because I got spammed and had only written the code for posting comments, not for managing. Wordpress's anti-spam Akismet, failed for me though. Too much spam came through adding to my workload. So I switched to disqus.
At the time, and maybe this is still true, disqus would put the comments in your wordpress database so if you ever decided to quit disqus you still had the comments.
Then eventually I got tired of the extra work of wordpress itself (having to update monthly) and went static + disqus.
I get the entire point is you probably don't like disqus because you're being tracked and/or want a different UX etc, and you should do whatever you want. There is enjoyment making your own systems. I wanted to blog to share things though and maintaining a comment system was time not writing posts.
You can do this for WordPress, but you will need to change comments endpoint, since spam software knows where to make a request.
Interesting. One would assume that most spammers use automated browsers with JavaScript enabled.
Just add an input with value which is submitted when user has no javascript. Change that value via javascript and check for existance server-side.
This has been working well ever since comment spammers became a thing 15 or something years ago. It has not failed me since.
I just use a GitHub issue for my post's comments, explained here: https://pknopf.com/post/2018-10-13-comments-for-static-sites...
I use GitHub's API to render the comments on my static site. Comments must be left on GitHub.
So the model really is: offload whatever you can to the user. Or just don't have comments :)
If the website wasn't static, then I'd simply just use a server.
I would try something else today.
[0] https://webmention.io
[1] https://talk.hyvor.com
webmention.io is a specific open-source service you can use with your sites to implement receiving them.
Write and publish articles in a space you control including locally, offline and static hosting.
Save articles to your personal datastore and edit (supports Solid / Linked Data Platform).
Annotate, reply to and share articles.Let your readers choose where to store their annotations.
Get notifications when someone interacts with your article.
Embed live data, scripts, stats and multimedia. Great for tutorials and experimental results.
Add identifiers and semantic markup to any concept to put your prose in the Linked Open Data cloud.
Anyone can tweak, clone and remix your articles. Spread your ideas, facilitate knowledge access and reuse.
Let your readers choose a view that suits them. Design your own or use preset themes.
Open source and under ongoing development...dogfooding, feedback and contributions welcome.
https://dokie.li/
For a quick peak at what a dokie annotated page looks like: https://imgur.com/gallery/ffH01dh
I switch back and forth between Dokie and https://web.hypothes.is/about/ and hope these features become more widely used.
My personal experience is that comments are usually content-thin, and not worth reading. I publish my email address prominently, and people who want to tell me something do take the time to email me, and I enjoy the more personal conversation over email as well.
So it depends on your use case.
I think for communities like HN, the real content actually is the comments-- or rephrased, HN uniquely stands out amongst other news aggregators because of its community. You could say the community sentiment should be reflected through the content submitted, but I just don’t believe that’s true.
However, I don’t think everything on earth needs comments. I honestly never understood the point of blog posts having comments, but I’ve never run a successful blog that anyone looks at either so maybe I don’t get it.
But it seems they aren’t valuable _enough_ that someone would develop a browser extension to comment on any webpage —or, since such extensions have been tried a lot actually, that people would actually use them.
[0]: https://theonlinephotographer.typepad.com/the_online_photogr...
You are literally commenting on HN, so it must depend on the community more than commenting system.
Note that you write this in a comment.
There are blogs using Discqus that have excellent discussions...