Congratulations on your system!<p>> Must be manually curated and posted<p>Well sure but you can make that semi-automated using a TUI/WebUI to filter out obvious spam then review comments individually before pushing a batch to your publishing pipeline. For example, by importing the maildir entries into your SSG directory, or by forwarding the selected comments to a localhost address not reachable from the outside where the maildir will be automatically picked up by a script.<p>> No notifications<p>for me i don't have notifications of email but that's a feature not a bug. i could set up some easily on my smartphone. and you could do the same, or you could use something like sendxmpp to keep you updated on a chat account.<p>> No “built-in” reply functionality<p>Why not? Just assign every article a uniqueID, and every approved message a uniqueID based on a hash of publishing date and commenter email and use a mailto URI for the reply link where subject = "articleID-commentID" and body = explanation to not change the message title and about privacy policy. That's how email-based bugtracking systems like debbugs work to keep track of relations between messages. You could even make opt-in for receiving (approved) replies via email maybe by adding "Can't wait to hear from you!" at the end of the body...<p>I can't find the source right now but if you ask cmccabe from rawtext.club (can also be found on other tildeverse IRC chans) he's got a nice/flexible email treatment pipeline using simple scripts that could be very well adapted to this usecase. Demo? Send "pepperoni" subject to frisbee+pizza@rawtext.club ;-) ;-)
The problem with this approach is that most people don't have a mail app set up on their computers (I'm guessing on phones it works flawlessly). Pretty much everyone uses a webmail now a days, so "mailto:" links simply don't work for most people, they just open a default mail client which the user doesn't use and never setup. So you end up with a confused user unable to comment.
On the markup: don’t nest buttons and links, they don’t play well together—the combination messes up various tooling, including screen readers (or so I’m told), and definitely messes up keyboard navigation with Tab and expected interactivity. Use one or the other. A link, most likely, so people can easily copy it:<p><pre><code> <a href="mailto:hello@tdarb.org?subject=RE:%20My%20Cheapskate%20Commenting%20System">Comment via email</a>
</code></pre>
You might hope that you could make it a full form, with a body field and all:<p><pre><code> <form action="mailto:hello@tdarb.org" target="_blank">
<input type="hidden" name="subject" value="RE: My Cheapskate Commenting System">
<textarea name="body"></textarea>
<input type="submit" value="Comment via email">
</form>
</code></pre>
… but in practice, application/x-www-form-urlencoded turns spaces into +, but + is ambiguous in mailto: URIs <<a href="https://datatracker.ietf.org/doc/html/rfc6068#section-5" rel="nofollow">https://datatracker.ietf.org/doc/html/rfc6068#section-5</a>> and generally interpreted as + rather than space. I don’t believe there’s any way to instruct browsers to emit %20 instead. As <a href="https://url.spec.whatwg.org/#concept-urlencoded" rel="nofollow">https://url.spec.whatwg.org/#concept-urlencoded</a> says, “the application/x-www-form-urlencoded format is in many ways an aberrant monstrosity”. I love it when language like that gets into specs, even if it’s only in non-normative notes. (The body field is probably not universally supported either, but with spaces being turned into plus signs, the absence of the body don’t signify so much.)<p>(If inspecting RFC 6068 carefully, you’ll note that line breaks also have to be encoded %0D%0A (␍␊); that one isn’t a problem, as HTML form data serialisation normalises that way already <<a href="https://html.spec.whatwg.org/multipage/form-control-infrastructure.html#converting-an-entry-list-to-a-list-of-name-value-pairs" rel="nofollow">https://html.spec.whatwg.org/multipage/form-control-infrastr...</a>>—which I’ve seen trip up more than one char-count-limit implementation, with the server seeing two-char line breaks and the client seeing one-.)
I'm building a comment system along the same concept right now. The best part for me is - well, I hope so - that it filters quick and angry comments. Like OP suggests: visitors going through this small hoop probably leave interesting comments. Didn't know about lowtechmagazine having this kind of comments system, but that's definitely an endorsement for the concept, if you ask me. To filter spam, I base my system on the spam-filtering contactform I already have.<p>Besides: OP, I 'follow' your website by RSS now. Or should I send you an email to tell this!? ;)
My favorite way to implement and simply/safely self host a web comment system is to log all POSTs that include a string like, /@say/ in the URL to a unique log file on disk. This txt file is then the comments and included via server side includes for minimal attack surface with just enough features to do what's needed. This means you have to actually control the webserver but in this context I think that's reasonable.
I reached the same conclusion for my own static blog. One step beyond just having an email link is to run an AWS lambda that takes a web form post and sends you an email with the contents. That way you can add a captcha (hCaptcha seems like a good alternative to Google), and your email address doesn't float around on the public internet.
It's fairly low maintenance and easy to replace if you ever did want to step away from AWS.
If I had a blog, I would skip any kind of commenting system altogether and just post a link to every article I write to HN, and include a link to the discussion on HN in the article, and let HN be my commenting system. It would probably get more visibility, have better discussions, and even if the link was never seen by anyone on HN, it would still offer a place for discussion for a while. You would have the benefit of letting the HN community be a filter of who gets to respond, which I think is a pretty good filter.
I’m just running a single contact form on my blog. Messages aren’t displayed on articles. Users don’t even have to include their email if they don’t want to. The comment is stored in a file on disk by a very simple fastCGI script. The rest of the blog is static [1]<p>[1] <a href="https://franz.hamburg/writing/boring-website.html" rel="nofollow">https://franz.hamburg/writing/boring-website.html</a>
> E-mail. It’s just plain e-mail.<p>came to the same realization. it dawned on me that we have done it before in the past with "contact me" and "guestbook" forms.<p>email providers could repurpose their service around this. it would be awesome to manage comments natively and easily from your inbox. plus you can take your email messages and contacts with you.<p>it is full of potential.
> Those willing to write me a personal e-mail in order to share their thoughts on my stupid little blog probably have something interesting to say.<p>Neat. I expect it would also reduce low-quality content, because (optimistically) commenters are making a more human connection by directly emailing the author and asking him to do a little work, and (pessimistically) they know they can't get past the content filter, and nobody will ever read their screed if it's too nasty.<p>I've run a blog for over 17 years, and haven't turned comments on for over 16 of them. I don't consider the pluses worth the minuses. But, this method never occurred to me.
You can use mine:<p><a href="https://roastidio.us/claim" rel="nofollow">https://roastidio.us/claim</a><p>It will send emails to you and let you choose which one to show the world. All email addresses are hidden so everyone stay anonymous.
Interesting solution however I would however be worried about potential confusion around implicit expectation of privacy when users send an email - this is the first time
I’ve seen this barrier being broken down in this way.
I’m surprised nobody mentioned procmail.<p>Could help automate some tasks for you. Maybe even some kind of review/publish mechanism depending on how far you wanted to automate things.
I did _exactly_ the same thing. My blog runs on Jekyll too. I had Disqus but it was spammy.<p>I've found that I get most comments on hacker news though ;)
so do I [1] and I render them in an iframe straight from the comment feed. Wouldn't have to be email, could be a web form or be aggregated from HN or alike as well.<p>[1] <a href="https://blog.mro.name/2019/05/wp-to-hugo-making-of/" rel="nofollow">https://blog.mro.name/2019/05/wp-to-hugo-making-of/</a>
The cons of the email option can be mitigated by setting a mail archiver (as used for mailing lists). Since it's about avoiding setting any software on a remote system, one can run its update/maintenance bits locally, along with other website generation/upload software.
I Love this.
Will try it out on my personal blog soon, as well as utterances.
I get that some people don't want to have a github account and email seems like a great alternative.
if you want a quick and easy way to put comments into a small free postgresql instance including auth you can try <a href="https://github.com/malerba118/supabase-comments-extension" rel="nofollow">https://github.com/malerba118/supabase-comments-extension</a>