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 rake release