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.
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.