Under the Covers: Qup.tv’s Technology Stack
In case you were curious how Qup.tv was built, here’s a quick rundown of the technology behind it:
- Sinatra is the main application layer and serves up all of the web content.
- MongoDB stores user and title information. MongoMapper is the ODM that connects it to Ruby.
- Redis stores usage statistics and worker queue info.
- Sidekiq handles fast, concurrent worker processing.
- Pony delivers the mail using SendGrid.
- Nokogiri parses the Netflix RSS feed of new releases
- Faraday performs the HTTP fetching of API calls from Netflix and RottenTomatoes.
- OmniAuth handles the Netflix authentication with omniauth-netflix doing the specific heavy lifting.
- Sprockets handles the asset pipeline powering the compilation of Coffeescript, SASS, Compass and Twitter Bootstrap.
- Heroku hosts the service on the best platform around.
- Unicorn provides speed and concurrency on a single Heroku dyno.
It’s amazing both how much can be accomplished in 24 hours and how large the list of tools and libraries can grow in that short of time.