TheBuzzEngine is a simple commenting system, designed for Google App Engine, as a replacement for DISQUS and similar services.
- download the Google App Engine - Python SDK
- create an instance on Google App Engine - check out their docs on Getting Started with Python
- fork this repo or download an archive
- in appcfg.yml change the "application" (first line) to point to whatever App ID you created
- in settings.py change ADMIN_EMAIL + EMAIL_SENDER (see comments)
- deploy and go to the homepage, which should look like this one -- check out this doc on how to Upload an Application to GAE
- follow the instructions in your app's homepage (you just need to copy a Javascript widget in whatever page you want comments)
I tried to use Disqus for adding commenting to my blog pages; but Disqus is too complex and I needed something simpler:
- 4 fields: Name, Email, URL + Comment
- Those 3 author-related fields should be tracked with a cookie and auto-completed
- Gravatar for user images
- Moderation (editing or removing) by email
- Fast, light
TheBuzzEngine is an implementation for the above and it runs on Google's App Engine.
The following features are planned:
- email subscriptions to replies in a thread
- threaded replies to comments (only 1 level)
- Askimet integration for spam filtering
- better admin (email moderation is OK for low traffic, but better control and filtering required)
What I did is described in this article: http://alexn.org/blog/2011/03/24/cross-domain-requests.html
Tested with Chrome 5, Firefox 3.5, Opera 11, IExplorer 8, IExplorer 6.
In IExplorer < 8 the commenting form is disabled (meaning only comments are shown). I may fix this, but incentive for me to fix it for IExplorer 6 is pretty low. If you want IExplorer 6, send me a note and I'll reconsider.
It's OK for simple stuff like this -- just one problem for this app -- unfortunately if there are no warm instances active, request can take 10 seconds.
Facilities used thus far:
- datastore
- memcached
- tasks queue
- sending email
MIT Licensed. See the LICENSE file for details.