William Lyon walks through the tweet ranking application – Twizzard which uses Neo4j for storing Twitter data and for querying and retrieving ranked timelines per user.

I spent this past weekend hunkered down in the basement of the local Elk’s club, working on a project for a hackathon. The project was a tweet ranking web application. The idea was to build a web app that would allow users to login with their Twitter account and view a modified version of their Twitter timeline that shows them tweets ranked by importance. Spending hours every day scrolling through your timeline to keep up with what’s happening in your Twitter network? No more, with Twizzard!

Getting started
I stumbled across this node.js hackathon starter template a few months ago. I decided to give it a try for the first time this weekend. It puts together a stack that I’m familiar with: node.js, mongoDB, Express, passport for handling OAuth, Bootstrap and jade. It’s a great starter template for, as the name implies, starting hackathon projects.

Graph data model
Since this project deals with Twitter data, modeling that data as a graph seems intuitive. We’re concerned with users, their tweets, and the interactions between users. The data model is pretty simple:

Twizzard graph data model

 

Read the full article.