Howcast API Ruby Wrapper
Copyright (c) 2008 - 2011 Howcast Media Inc.
Installing
$ sudo gem install howcast
Examples
require 'rubygems'
require 'howcast'
hc = Howcast::Client.new(:key => "INSERT API KEY HERE")
# Will print out the video titles of the first page of recent howcast studios videos
puts "Recent Howcast Studios Videos"
hc.videos.each do |v|
puts v.title
end
puts "2nd Page of Top Rated Videos"
# Will print out the video titles of the 2nd page of top rated videos
hc.videos(:page => 2, :sort => "top_rated", :filter => "all").each do |v|
puts v.title
end
puts "Videos matching 'origami'"
hc.search("origami").each do |v|
puts v.title
end
puts "Video with id 946"
puts hc.video(946).title
# Category API
piano = hc.category(1105)
puts "The parent category of Piano is #{hc.category(piano.parent_id).name}"
ancestors = piano.parents.map{|c| c[:name]}
# Ancestors will be an array of hash metadata:
# => [{:name=>"Performing Arts", :id=>"1048"},
# {:name=>"Musical Instruments", :id=>"1095"},
# {:name=>"Keyboards", :id=>"1103"}]
puts "The ancestors of piano are: #{ancestors.join(" -> ")}"
Setup for Development Work
# get it $ git clone git://github.com/howcast/howcast-gem.git
# install dependencies $ cd howcast-gem $ bundle install
# run tests $ bundle exec rake spec
# see useful rake tasks $ bundle exec rake -T
# start hacking $ mate .
Releasing
# make sure all specs are passing $ bundle exec rake spec
# update/set the release version, where X.X.X is the new version number $ echo "X.X.X" > VERSION
# commit and push the new version (and any other uncommitted files) $ git commit -a -m 'Blah-blah-blah' $ git push
# create tag, build, and push howcast gem to rubygems $ bundle release