InfoQ

News

ActionScript Libraries Help Mashing up the Web 2.0 Platforms

Posted by Moxie Zhang on Feb 06, 2008 08:54 AM

Community
Java
Topics
Rich Internet Apps
Tags
Flex,
Web 2.0,
Flash

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.

1 comment

Reply

UMap is not open source by Adrian Parker Posted Feb 11, 2008 7:29 AM
  1. Back to top

    UMap is not open source

    Feb 11, 2008 7:29 AM by Adrian Parker

    I understand UMap, as mentioned above, is not open source. The developers also want US$750 for a commercial license, which seems at odds with Google's underlying license.

Exclusive Content

Rationalizing the Presentation Tier

Thin client paradigm characterized by web applications is a kludge that needs to be repudiated. Old compromises are no longer needed and it's time to move the presentation tier to where it belongs.

Agile Project Management: Lessons Learned at Google

In this presentation filmed during QCon 2007, Jeff Sutherland, the creator of Scrum, talks about his visit at Google to do an analysis of Google's first implementation of Scrum.

AtomServer – The Power of Publishing for Data Distribution

In this article, Bryon Jacob and Chris Berry introduce AtomServer, their implementation of a full-fledged Atom Store based on Apache Abdera, which is now available as open source.

An Introduction to Virtualization

It is easy to think that virtualization applies only to servers. In reality the recent resurgence of the concept is also being applied to networking, storage, and application infrastructure.

REST Anti-Patterns

In this article, Stefan Tilkov explains some of the most common anti-patterns found in applications that claim to follow a "RESTful" design and suggests ways to avoid them.

Choosing between Routing and Orchestration in an ESB

In this article, Adrien Louis and Marc Dutoo discuss the differences and relative merits of using orchestration vs. routing in a typical ESB setup, and discuss various implementation options.

Enterprise Batch Processing with Spring

Wayne Lund discusses batch processing, Spring Batch objectives and features, scenarios for usage, Spring Batch architecture, scaling, example code, failures and retrying, and the future roadmap.

User Story Estimation Techniques

Developer Jay Fields draws on his experiences as a ThoughtWorks consultant to describe effective user story estimation techniques.