Indexed by TopGit from live GitHub metadata: phusion/juvia has 1.0k stars, written primarily in Ruby. A commenting server similar to Disqus and IntenseDebate.
Snapshot summary built from the project's own GitHub metadata — there's no written TopGit review yet. The page will update automatically when a full review is published.
WHY NO REVIEW YET
TopGit writes full reviews for the most-starred, most-requested repositories. This page is a snapshot until then — see the READ ME tab for the original README in full.
Juvia is currently maintained, but we surely will appreciate new contributors.
Juvia is an open source commenting system. It allows you to outsource your commenting needs to an external system so that you don't have to build your own commenting system for each website or each web app. Embedding a Juvia commenting page only involves pasting a JavaScript snippet into your web page.
Juvia is similar to Disqus and IntenseDebate. However both of them seem to be designed in the early 2000s before the rise of AJAX: trying to integrate either of them in an AJAX web application results in many wasted afternoons and a screen full of inexplicable JavaScript errors. Juvia offers full support for AJAX web pages and any JavaScript is written in such a way that it avoids conflicts with the page's existing JavaScripts.
Juvia currently also makes no effort to support nested comments. I believe nested comments only make sense for extremely active discussion forums. Instead, Juvia strives for simplicity.
Other notable highlights:
Moderation support, either manually or automatically via Akismet.
Multi-user support. With this I don't mean commenters but users who operate the Juvia admin panel. Each user account is isolated and can only see and manage its own sites, topics and comments, except for administrators who can see and manage everything.
Email notification of new comments.
Wordpress comment import (thanks to JangoSteve).
Installation
Clone this repository into a desired directory and cd to it.
Configure your database details by editing config/database.yml. An example is provided in config/database.yml.example. Only edit the information under the 'production' section.
Configure other things by editing config/application.yml. An example is provided in config/application.yml.example. Only edit the information under the 'production' section.
Install the necessary dependencies: bundle install --without='development test postgres sqlite' --path=help
Install the database schema: bundle exec rake db:schema:load RAILS_ENV=production
Compile the static assets: bundle exec rake assets:precompile RAILS_ENV=production RAILS_GROUPS=assets
Deploy this application to Phusion Passenger or whatever application server you prefer.
You can now access Juvia through the address that you configured. It will ask you to create an initial administrator account and to register a site.
Upgrade
cd to the source directory and update the code to the latest version: git fetch && git reset --hard origin/master
Install the necessary dependencies: bundle install --without='development test' --path=help
Upgrade the database schema: bundle exec rake db:migrate RAILS_ENV=production
Compile the static assets: bundle exec rake assets:precompile RAILS_ENV=production RAILS_GROUPS=assets
Run touch tmp/restart.txt (if you're using Phusion Passenger) or restart your application server.
Cryptographic verification
I do not release source tarballs for Juvia. Users are expected to get the source code from Github.
From time to time, I create Git tags for milestones. These milestones are signed with the Phusion Software Signing key. After importing this key you can verify Git tags as follows:
git tag --verify milestone-2013-03-11
Rails helper
James Smith has written a Rails helper gem for embedding Juvia comments into Rails web applications. See juvia_rails.
TODO
Juvia is pretty broken and outdated at the moment. That means we have to stabilize and update components first. That's what we are gonna do:
Update libraries and gems, replace highly outdated dependencies, make project work on modern Ruby branch, lint code (probably have to push to Rails 5 or 6, Rails 4 is pretty outdated at the moment already)
Add dependabot, github actions to CI/CD, mandatody CI for pull requests (if possible)
Make and publish a rodmap based on issues, TODO and common sense
Work on the TODO list
Documentation, user guides
Some features we will like to implement in the future:
Juvia works fine but we need more tests to prevent things from breaking in the future.
Document the list_topics API call.
A Quote/Reply button for each comment.
Export support. Not sure whether this is necessary, the user may as well backup the entire database.
Email notification for commenters.
Moderation teams. Currently each site is owned by exactly one user, and only that user or the administrator can moderate comments. And right now only the site's owner is notified by email of new comments.
Better interface for low-resolution screens like mobile phones.
Allow commenters to edit their comments. Of course, this requires some way to authenticate the commenter. Maybe Juvia can send an email with a time-limited authentication code (assuming the commenter specified his email in the first place).
Yes — phusion/juvia ships under the AGPL-3.0 license, which makes its source code freely readable (and, depending on license terms, forkable and reusable). Source: github.com/phusion/juvia.
What is phusion/juvia?
phusion/juvia (phusion/juvia) is a Ruby project on GitHub. From the project's own README: A commenting server similar to Disqus and IntenseDebate.
What license does phusion/juvia use?
phusion/juvia is released under the AGPL-3.0 license. Always verify the LICENSE file directly on GitHub for the authoritative terms — license strings can be edited out of sync with a project's actual stance.
Where can I see phusion/juvia in action?
The project maintains a homepage at http://phusion.github.io/juvia/. The README tab on this page also usually contains screenshots and a quickstart.
Where do I read more about phusion/juvia?
This TopGit page is a snapshot — the READ ME tab shows the project's own README content (links stripped, images preserved). The GitHub repository at github.com/phusion/juvia is the definitive source.
Read full README in the tab above.
Still deciding about juvia?
One click hands the question to an AI along with this page — see what it says about juvia.