Castanaut
Automate your screencasts
Castanaut lets you write executable scripts for your screencasts. With a simple dictionary of stage directions, you can create complex interactions with a variety of applications.
Here's a screencast (of Tabulate) generated by Castanaut.
This is the Castanaut "screenplay" that produced it:
#!/usr/bin/env castanaut
plugin "safari"
plugin "mousepose"
plugin "ishowu"
launch "Mousepose"
launch "Safari", at(20, 40, 1024, 768)
url "http://gadgets.inventivelabs.com.au"
ishowu_set_region at(4, 24, 1056, 800)
ishowu_start_recording
while_saying "
Tabulate is a bookmarklet developed by Inventive Labs.
You use it to open links on a web page.
It's meant for iPhones, but we'll demonstrate it in Safari 3.
" do
move to(240, 72)
tripleclick
type "http://gadgets.inventivelabs.com.au/tabulate"
hit Enter
pause 2
end
while_saying "To install it, drag it to your bookmarks bar." do
move to_element("a.button")
drag to(88, 106)
pause 0.5
hit Enter
end
while_saying "Let's try it out on delicious." do
url "http://del.icio.us"
pause 2
end
while_saying "Simply invoke the bookmark..." do
highlight
pause 1
click
pause 0.5
end
while_saying "
The status box appears, indicating that Tabulate is active.
" do
move to_element("body", :area => ["top", "left"]), offset(30, 30)
end
dim
while_saying "If you see a link that interests you, tap it." do
move to_element("h4 a", :area => ["top", "left"])
click
end
pause 1
highlight do
while_saying "
You would tap the blue circle to open the link in this tab.
" do
move to_element("#_tabulate_box img", :index => 1)
end
while_saying "Tap the green circle to open in a new tab." do
move to_element("#_tabulate_box img", :index => 2)
end
while_saying "
Most people use Tabulate to flag links for opening later.
This is what the orange circle does.
" do
pause 1.5
move to_element("#_tabulate_box img", :index => 3)
pause 1
click
end
end
while_saying "Let's flag the next two links as well." do
i = 1
while (i <= 2)
move to_element("h4", :area => ["top", "left"], :index => i)
click
move to_element("#_tabulate_box img", :index => 3)
click
i += 1
end
end
while_saying "
On the iPhone, we would open these three links simultaneously
by tapping on the status box.
" do
highlight do
move to_element("body", :area => ["top","left"]), offset(30,30)
end
end
pause 1
say "That's all. Thanks for watching!"
You can install Castanaut and find out how to use it in the sidebar. Castanaut is made available under the [WTFPL license](http://sam.zoy.org/wtfpl/).
About the robot voice: no, we don‘t recommend you use Alex the robot in real screencasts for a large audience. Most people find him a little offputting. He's great for preparing the screencasts however, because he lets you pace the movie to an eventual human narrative. You simply re-soundtrack the movie with real voice actors before publishing it. Of course, you are also free to contravene our recommendation. You can tweak the robot in the Mac OS X Speech Preferences pane.