a simple node app for disqus-like drop-in commenting on static websites
Last updated 2 months ago by gka .
LicenseRef-LICENSE · Repository · Bugs · Original npm · Tarball · package.json
$ cnpm install schnack 
SYNC missed versions from official npm registry.


Schnack is a simple Disqus-like drop-in commenting system written in JavaScript.

What the schnack?


  • Tiny! It takes only ~8 KB!!! to embed Schnack.
  • Open source and self-hosted.
  • Ad-free and Tracking-free. Schnack will not disturb your users.
  • It's simpy to moderate, with a minimal and slick UI to allow/reject comments or trust/block users.
  • webpush protocol to notify the site owner about new comments awaiting for moderation.
  • Third party providers for authentication like Github, Twitter, Google and Facebook. Users are not required to register a new account on your system and you don't need to manage a user management system.


This is the fastest way to setup schnack.


  • Node.js (>= v6)
  • npm (>= v5)

Create a new folder for schnack and change into it:

mkdir schnack
cd schnack
npm init schnack -- --tag=alpha

Since no schnack.json has been found in your folder, the init script copied over the default config.

Now edit the config file according to configuration section:

vim schnack.json                 # or open with any editor of your choice

Finally, run npm init schnack again to finish installation:

npm init schnack

Run the server:

npm start

Embed in your HTML page:

<div class="comments-go-here"></div>

or initialize schnack programmatically:

<div class="comments-go-here"></div>

<script src=""></script>
    new Schnack({
        target: '.comments-go-here',
        slug: 'post-slug',
        host: ''

You will find further information on the schnack page.


Authentication and notification providers can be added via plugins.

Who is behind Schnack?

Schnack is yet another happy collaboration between Webkid and Gregor Aisch.

Who is using Schnack?

Schnack will never track who is using it, so we don't know! If you are a Schnack user, let us know and we'll add your website here. So far Schnack is being used on:

Related projects

This is not a new idea, so there are a few projects that are doing almost the same thing:

Migrating to Schnack 1.0

Two major things have changed in version 1.0: the way Schnack is being installed and the name and format of the config file.

  • create a new folder for schnack
  • copy your old schnack.db to the new folder
  • copy your old config.json to the new folder
  • rename config.json to schnack.json
  • in the config file you need to move the config sections for the auth and notify providers into the new plugins section.


    "auth": {
        "twitter": {
            "consumer_key": "xxxxx",
            "consumer_secret": "xxxxx"


    "plugins": {
        "auth-twitter": {
            "consumer_key": "xxxxx",
            "consumer_secret": "xxxxx"

Here's the full list of all changed config paths

auth.facebook --> plugins.auth-facebook
auth.github --> plugins.auth-github --> plugins.auth-google
auth.mastodon --> plugins.auth-mastodon
auth.twitter --> plugins.auth-twitter
notify.webpush --> plugins.notify-webpush
notify.pushover --> plugins.notify-pushover
notify.sendmail --> plugins.notify-sendmail
notify.slack --> plugins.notify-slack

Current Tags

  • 1.0.0-0                                ...           alpha (a year ago)
  • 1.0.0-1                                ...           latest (2 months ago)

7 Versions

  • 1.0.0-1                                ...           2 months ago
  • 1.0.0-0                                ...           a year ago
  • 0.1.3                                ...           3 years ago
  • 0.1.2                                ...           3 years ago
  • 0.1.1                                ...           3 years ago
  • 0.1.0-alpha                                ...           3 years ago
  • 0.0.1-alpha                                ...           3 years ago
Maintainers (2)
Today 0
This Week 0
This Month 0
Last Day 0
Last Week 0
Last Month 7
Dependencies (15)
Dev Dependencies (15)
Dependents (0)

Copyright 2014 - 2016 © |