Skip to content
A real-time, markdown-enabled comment engine powered by leveldb with oauth support
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
ansible
comments-all
comments-cli
comments-ts
docs
modules
ngx-upstream/comments
scripts
.gitignore
ARGS.txt
CHANGELOG.md
LICENSE.txt
PORT.txt
README.md
pom.xml
run.properties
run.sh
screenshot.png

README.md

comments app

A real-time comment engine with support for anonymous or authenticated posts

Quickstart

mkdir -p target/standalone && cd target/standalone
wget https://cdn.jsdelivr.net/npm/dyu-comments@0.6.0/bin/comments-linux-standalone-x64.tar.gz
tar -xzf comments-linux-standalone-x64.tar.gz
./start.sh

screenshot

The demo is running on a $2.5 vultr plan located in SG, with the app configured to use a max memory of 128mb (to leave most of the available memory to the filesystem cache).

Instant comments on your site/blog

Put this anywhere in the html body (although it is advisable to put it last)

<div id="comments"></div>
<script>
window.comments_config = {
  collapse_depth: 7, // the depth where comments get collapsed by default
  limit_depth: 10, // max: 127
  //auth_host: 'https://api.dyuproject.com', // if you prefer authenticated comments
  ws_enabled: true, // real-time updates
  ws_host: 'wss://rpc.dyuproject.com/sub',
  rpc_host: 'https://rpc.dyuproject.com'
}
</script>
<script src="https://netlify-comments.dyuproject.com/dist/build.js"></script>
<link rel="stylesheet" href="https://netlify-comments.dyuproject.com/dist/build.css" />

Note: Uses the same instance powering the demo. No tracking whatsoever.

  1. The css is 7.1kb minified, built with pavilion core.
  2. The js is 91.8kb minified, built with:

Server runtime dependencies

  • jdk7

Dev requirements

  • node 6.9.0 or higher
  • yarn (npm install -g yarn)
  • jdk7 (at /usr/lib/jvm/java-7-oracle)
  • maven
  • protostuffdb (downloaded below)

Setup

mkdir -p target/data/main
echo "Your data lives in user/ dir.  Feel free to back it up." > target/data/main/README.txt

# download protostuffdb
yarn add protostuffdb@0.14.0 && mv node_modules/protostuffdb/dist/* target/ && rm -f package.json yarn.lock && rm -r node_modules

wget -O target/fbsgen-ds.jar https://repo1.maven.org/maven2/com/dyuproject/fbsgen/ds/fbsgen-ds-fatjar/1.0.10/fbsgen-ds-fatjar-1.0.10.jar
./modules/codegen.sh
mvn install

npm install -g http-server clean-css-cli
cd comments-ts
yarn install

Dev mode

# produces a single jar the first time (comments-all/target/comments-all-jarjar.jar)
./run.sh

# on another terminal
cd comments-ts
# serves the ui via http://localhost:8080/
yarn run dev

If your dev machine is a MacOS, protostuffdb currently does not have binary distributions for it (no MacOS machine to test/build against).

On the other hand, you can still do development on the client-side part with this temporary workaround:

  1. Edit comments-ts/index.html
  2. Replace window.rpc_host = 'http://127.0.0.1:5020' with window.rpc_host = 'https://rpc.dyuproject.com'

Production mode

cd comments-ts
# produces a single js and other assets in comments-ts/dist/
yarn run build
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.