ActionScript is a scripting language based on ECMAScript (JavaScript). It's used for the development on Adobe Flash player platform using RIA authoring tools such as Adobe Flash Studio, Adobe Flex and Adobe AIR. While RIA technologies are proliferating in web application development space, ActionScript starts gaining more attentions from the software development communities. Even though the majority of well recognized Web 2.0 companies and most of the web mash-ups were built using AJAX for their respective user interfaces, ActionScript is notably showing increased presence in the same area, backed by a number of open source ActionScript projects.
InfoQ took a look at some of the open source ActionScript libraries developed for a few major Web 2.0 and E-commerce companies.
MySpace Development Platform (ActionScript Library)
This week (2/4/2008) the long waited and mostly speculated MySpace Developer Platform launched. Coming from the world's largest social network, It's a significant new addition to the web platform in general. In addition to the traditional JavaScript and REST APIs, the launch includes an ActionScript Library. Flash and Flex developers can immediately start building RIA applications for this platform. MySpace platform is also compatible with Google's OpenSocial with its own extensions, while OpenSocial is still in talking to develop its own ActionScript API.
Facebook F8 Platform (ActionScript API)
MySpace rival Facebook had about a year leading time of launching its F8 Development Platform. A open source Facebook ActionScript library was developed later by Jason Chrst and hosted on Google Code. This ActionScript 3.0 API provides an interface between the Facebook REST API and Flash/Flex based applications. As the project describes:
The open-source Actionscript 3 library was developed with Adobe Flex 2 in mind but will work in Adobe Flash 9 or Flex 3 as well. The API will allow developers to create desktop applications, website applications, or applications integrated into the Facebook website.
Amazon S3 (ActionScript Library)
Amazon S3 (Simple Storage Service) is an online storage service that is part of Amazon's AWS (Amazon Web Services). An ActionScript library, as3awss3lib, is hosted on Google code and was developed for interacting with Amazon S3. This library depends on another two S3 ActionScript library, As3Crypto and As3corelib.
eBay Platform (ActionScript Library)
The eBay ActionScript 3.0 library, as2ebaylib, provides an interface between the eBay XML API and Flash/Flex based applications. This library is hosted on Google Code:
This open-source library will allow developers to create novel and innovative applications leveraging both eBay's marketplace services and Adobe's Flash Player 9 runtime! It is written in ActionScript 3.0, so any environment using ActionScript 3.0 can use this library, including Adobe Flex 2 and Adobe Flash Pro 9.
Flickr (ActionScript Library)
Flickr, as a Web 2.0 flagship company, offers a rich set of APIs to access its platform. Besides Google Map, Flickrs is web developers' the most favorite mesh-up web platform. The visual nature of Flickr service encouraged contributions from Flash development community from the beginning. The ActionScript 3.0 library, as3flickrlib, is an example. This ActionScript library provides access to the entire Flickr API.
YouTube (ActionScript Library)
YouTube has been already using Flash technology to distribute its contents, the videos. The ActionScript 3.0 library, as3youtubelib, was developed by Charles Bihis, Mike Potter, Darron Schall and Daniel Dura to allow Flash/Flex applications search videos from YouTube.
Yahoo! ASTRA (ActionScript Libraries)
Yahoo's Flash Developer Center has been busy developing APIs for Flash platform. The ASTRA Web APIs includes ActionScript libraries for accessing varies of Yahoo's web services. According to Yahoo:
Yahoo! AS3 API libraries are a set of wrapper tools that facilitate access to Yahoo!'s Web APIs from Flex and Flash. These libraries create an abstraction layer above the communication protocols used by Yahoo! servers, enabling Flash and Flex developers to send and retrieve data without any additional parsing. The AS3 libraries are easy to install and all accessible methods are fully documented. These libraries are open source and available under the BSD license.
The ASTRA Web APIs provides ActionScript 3.0 libraries for Yahoo! Answers, Yahoo! Weather, Yahoo! Search, Yahoo! Upcoming and Yahoo! Maps Communication.
Google Map (ActionScript API)
Currently in beta, the ActionScript 3.0 Google Map API, UMap, is developed by AF Components. AF Components describes UMap as:
Universal ActionScript 3.0 Mapping API integrated with Google Maps. The scalable component model allows you to create rich maps with interactive data layers. Our flexible API enables developers to build fully-customized solutions.
- Support for custom map tiles and providers
- Updated loading algorithms for faster tile loading
- Flash / Flex versions
- KML Support
- Advanced content layering
- FLA-Based Map Controls
- Vector shape overlays
- Extended Info Window styling
Web Map Services (Google, Microsoft VE and Yahoo) (ActionScript API)
Shane McCartney developed the ActionScript 2.0 API that works for the major web mapping platform, Google Maps, Microsoft Virtual Earth and Yahoo Map.
Twitter (ActionScript 3 API)
Twitter, the micro blogging and lifestream startup company, announced last year that majority of its traffic was coming from Twitter API. In addition to the REST API as the web service end point, Twitter offers both ActionScript 2 and ActionScript 3 toolkits to access its platform from Flash based applications. Besides the official Twitter API, there are third party APIs such as SWX Twitter API for Flash and Flash Lite. Similar startup company such as Pownce has also seen ActionScript 3.0 library developed for its platform.
Digg (Flash Kit)
The social news startup Digg offers a platform API for accessing its contents. The open source Digg Flash Kit is a collection of ActionScript 3.0 classes. Digg Labs has bas show cases that the Flash Kit was utilized to build visualization of Digg data.
Last.fm Music (ActionScript Library)
Last.fm is one of the largest Web 2.0 social music playground. Much of the data available to Last.fm is available in several formats through the Audocrobbler Web Services API. The Last.fm ActionScript 3.0 library, lastfm-as3, is a open source library. The project describes the library as:
This is an Actionscript 3.0 API to access all the available Last.fm web services. This should hopefully save some people time from doing all the grunt work of parsing feeds and sorting through all that lovely data that Last.fm provides. It is currently a work in progress so not all the services are currently available.
The ActionScript libraries listed above are examples and subset of ActionScript resources available for the development of RIA mash-up applications on the Web 2.0 platforms. New ActionScript developments will continue with contributions from RIA developers and technology providers. Last year (11/2007) Adobe donated the source code for the ActionScript Virtual Machine to Mozilla Foundation. Mozilla is now hosting this new open source project called Tamarin, which will continue to be used by Adobe as part of the ActionScript Virtual Machine within Adobe Flash Player. In the mean while, the Tamarin Virtual Machine will be used by Mozilla within SpiderMonkey, the JavaScript engine embedded in Firefox. ActionScript is becoming a mature application development language.
InfoQ will continue reporting the new developments in the RIA world.