Remark42 a commenting system

Anyone have an experience to share using it ?

Couldn’t get it to run in docker via Unraid. I’m using commento instead.

I switched to it from Disqus and embedded it within Ghost, then blogged about it - Disqus to Remark42

I debated about Commento, but it looked abandoned. Remark runs via a simple binary downloaded and wired up with a reverse proxy on nginx and good to go.

I recently submitted some suggestions so the next release (after 1.8.1) will have some enhancements with the minification and loading of the modules. So will be even more optimized. It works quite well with Ghost.

1 Like

The person who runs Commento appears to be very active on Github now. I see there isn’t a lot of activity on the Commento repository but perhaps it’s just at a stage where it only requires maintenance? Anyway, I’m going to take a look at both Commento and Remark42 as I’m looking to integrate comments on a Ghost website as well.

Oh and any experience with https://cove.chat?

It’s easy to run using Docker. I recommend running it using docker-compose, and mounting a volume

version: "2"

services:
  remark:
    build: .
    image: umputun/remark42:latest
    container_name: "remark42"
    hostname: "remark42"
    restart: always

    logging:
      driver: json-file
      options:
        max-size: "10m"
        max-file: "5"

    ports:
      - "5010:8080"

    environment:
      - REMARK_URL=http://localhost:5010
      - SECRET=somesecret
      - DEBUG=true
      - SITE=mysite
      - AUTH_ANON=true
    volumes:
      - ./var:/srv/var

And then add this to single post page

<div id="remark42"></div>

<script>
    const defaultTheme = "light";
    function getHelloFriendTheme() {
      const theme = localStorage && localStorage.getItem("theme");
      if (!theme) {
        return defaultTheme;
      } else {
        return theme;
      }
    }
</script>

<script>
  var remark_config = {
    host: "http://localhost:5010",
    site_id: "mysite",
    theme: getHelloFriendTheme(),
    show_email_subscription: false,
  };
</script>

<script>
  !(function (e, n) {
    for (var o = 0; o < e.length; o++) {
      var r = n.createElement("script"),
        c = ".js",
        d = n.head || n.body;
      "noModule" in r ? ((r.type = "module"), (c = ".mjs")) : (r.async = !0),
        (r.defer = !0),
        (r.src = remark_config.host + "/web/" + e[o] + c),
        d.appendChild(r);
    }
  })(remark_config.components || ["embed"], document);
</script>

<script>
  const themeToggle = document.querySelector(".theme-toggle");
  themeToggle.addEventListener("click", () => {
    setTimeout(() => window.REMARK42.changeTheme(getHelloFriendTheme()), 10);
  });
</script>

Thanks, exactly what I’m looking for when trying apps :)