A 'heartbeat' web application for Hacker News members' karma.
This is a Backbone.js/Marionette application with Python/Django backend and
REST-ful API which depends on Django REST Framework. Grunt.js and Twitter's
Bower are used for automation via JavaScript and frontend library/package
management.
The app follows a custom RequireJS + Marionette architecture for modular view
style, behaviors, and JavaScript resources. Effectively, "apps" (modules)
reveal modular views for re-use and lazily loaded resources.
Enable a broader definition of "user" to include all popular social networks,
fitting content to a "karma" model. Concepts such as "liking" can be treated
analogously as an "upvote"; and these can be applied to any type of content,
where it is a "comment", "post".
A singular post can be treated as a simple Hypermedia object which may have
various interaction handles depending on the type of post that it is, which
exposes a content type: text, image, etc.
A user can be given a time series graph which exposes over time the behavior
of their posting habits in terms of the implied Hypermedia Persona, given the
coupling of second-order content ("post", etc.) to first-order content
("image", etc.).
Please review Gruntfile.js
for available tasks.
bower update
and grunt update
are your friends.bower install [library_name] --save-dev
for new frontend components/packages.grunt install; grunt watch
to watch LESS and CoffeeScript directories.See https://www.hnsearch.com/api
.
Canonical: http://api.thriftdb.com/api.hnsearch.com/[items|users]/_search?
Date Range: http://api.thriftdb.com/api.hnsearch.com/items/_search?username=yog&filter[fields][create_ts]=[2013-05-01T00:00:00Z%20+%20TO%20+%20*]&pretty_print=true
See requirements.txt
.
$ pip install -r requirements.txt
$ export CPPFLAGS=-Qunused-arguments
$ export CFLAGS=-Qunused-arguments
$ brew install postgresql