Flex Frameworks
Some say that if a technology has a lot of frameworks, then it is a sign of maturity. You might argue with that, but still I think it is interesting to know what are the available frameworks in the Flex/Flash world.
This is work in progress, thus if you know other frameworks, please post a comment or send me an email.
MVC frameworks and Dependency Injection
- Cairngorm (Adobe Open Source) – MVC framework
- PureMVC (Open Source) – MVC framework
- Mate (Open Source) – Mate is a tag-based, event-driven Flex framework
- Swiz (Open Source) – Metadata-based Dependency Injection framework
- Spring ActionScript (Open Source) – Dependency Injection framework part of SpringSource
- Parsley (Open Source) – IOC Container (Configuration and Dependency Injection), MVC, and localization
- Robotlegs – automated metadata based dependency injection micro-architecture (framework) with a light footprint and limited scope
- HydraMVC – total rewrite of the PureMVC API exclusively for Flex
- dpHibernate – lazy loading across BlazeDS and Hibernate
- Flight Framework – MVC framework
Articles to get some idea about what these frameworks offer:
Testing frameworks and code coverage
- FlexUnit (Adobe Open Source) – conceptually based on famous JUnit
- FlexPMD (Adobe Technical Services) – tool for auditing AS3/Flex code against bad practices (anti-patterns, unused code, over-complex code, inefficient code). You can add rules and it can be used from Ant/Maven or Automator (Mac).
- Funit (Open Source) – Metadata Driven Unit Testing for Flex
- asUnit (Open Source) – Unit Testing Framework
- fluint (Open Source) – Unit Testing with further richer asynchronous support and support for integration-level testing
- FlexMonkey (Open Source) – UI testing, capture replay
- Selenium (Open Source) – API for Selenium
- FlashSelenium (Open Source) – Selenium RC Client driver extension
- HP QuickTest Professional 9.5 (Commercial License)
- mock-as3 (Open Source) – mock object library
- FlexCover (Open Source) – code coverage
- FunFX – functional testing framework
- Mock4AS – a simple Mock Object Library for ActionScript3
- ASMock – ActionScript 3 Mocking Framework
- Mockito – mocking framework for Flex
Building and Continue Integration
- Ant task (Adobe Open Source) – comes with Flex SDK
- flexmojos (Open Source) – Set of maven plugins for Adobe AIR and Flex development
- ServeBox (Open Source) – Flex maven plugin
- Flex Maven Reports (Open Source) – Maven reports for Flex
- Hudson (Open Source) – Continuous Integration engine
- CruiseControl.NET (Open Source) – Continuous Integration engine
- projectsprouts (Open Source) – cross-platform project generation and configuration tool for ActionScript 2, ActionScript 3, Adobe AIR and Flex projects
Flash 3D Engines
- AlternativaPlatform
- Papervision3D
- Away3D
- Sandy3d (OpenSource)
- Ambiera Coppercube – create your scene or import your 3D models into the CopperCube 3D editor, set camera controllers, materials and more, and click ‘publish’.
Server side libraries/frameworks for Flex
PHP:
- Zend AMF – remoting library, part of the Zend Framework
- AMFPHP – remoting library
- WebORB for PHP – remoting and data messaging (producer/consumer)
- SabreAMF – remoting library
Java:
- LiveCycle Data Services ES (Adobe, commercial license) – remoting, data messaging, data management, proxy, real time data pushing and synchronization, paging
- BlazeDS (Adobe Open Source) – remoting, data messaging, proxy
- Graniteds (Open Source) – remoting, EJB 3 services, data push
- WebORB for Java – remoting, data management, real time data messaging, client synchronization and paging. Additionally, it supports streaming video, recording video and remote shared objects
- Pimento (Open Source) – data management
ColdFusion:
- LiveCycle Data Services ES (Adobe, commercial license) – remoting, data messaging, data management, proxy, data pushing and synchronization, paging
- BlazeDS (Adobe Open Source) – remoting, data messaging, proxy
.NET:
- WebORB for .NET – data management, real-time messaging, remoting, MSMQ integration, client synchronization for data management, video streaming, remote shared objects
- FluorineFX – remoting, data messaging, data management (partial)
- Visual Studio plugins for Flex (you can use these plugins to develop Flex applications in the Microsoft Visual Studio; both are free):
Ruby on Rails:
- WebORB for Ruby on Rails – remoting
- RubyAMF (Open Source) – remoting
Python:
- PYAMF – remoting
- DjangoAMF – remoting
- AmFast – AMF0/AMF3 encoder/decoder for Python. Core encoder and decoder are written in C, so it’s around 18x faster than PyAmf
Utils:
- as3corelib – library that contains a number of classes and utilities for working with ActionScript 3 (include classes for MD5 and SHA 1 hashing, Image encoders, and JSON serialization as well as general String, Number and Date APIs)
- as3xls – package to read and write Excel files (it supports reading text, numbers, formulas, and dates from Excel version 2.x-2003 and writing text, numbers, and dates)
Uncategorized
- RIAlity – an advanced arquitecture for Flex and JEE with tooling (Eclipse Plugins) that allows to be more productive and deliver better RIA products
- Gaia Framework – open-source front-end Flash Framework for AS3 and AS2
- Degrafa (Open Source) – declarative graphics framework for Flex
- TLFX (MLP 1.1 license) - built on top of Text Layout Framework, it is a library for rendering HTML/CSS in Flash applications
- UML4AS – UML Editor for ActionScript and Flex. Support code generating, reverse engineering, round trips.





Android & AIR
PHP & Flex
[...] Flex Frameworks [...]
Good post!!!
one more… Flite http://code.google.com/p/fliteframework/
We ask ourselves, what is the combination that Mihai prefers.. For working in an Enterprise Project using PHP.. ;)
Asmock – http://asmock.sourceforge.net/
Mock4as – http://code.google.com/p/mock4as/
The first project is really great!
@Gustavo
I am working on an article to give my thoughts on the existent PHP libraries for remoting… not finished yet.
Good list, Mihai. Another functional testing framework is FunFX, which was presented at Flex Camp Oslo: http://funfx.rubyforge.org/
Great recopilation! :)
Another one: RIAlity, our Advanced Flex/JEE arquitecture.
type: commercial
urls:
http://www.carlosrovira.com/#/products/
http://www.carlosrovira.com/blog/index.php?s=riality
Hope you like it!
:)
Carlos Rovira
Another: Clear Toolkit http://is.gd/kJnQ
[...] http://corlan.org/flex-frameworks/ [...]
Two more:
SmartyPants-IOC (Guice-like Dependency Injection):
RobotLegs AS3 (PureMVC-like MVCS Framework)
[...] http://corlan.org/flex-frameworks/ [...]
http://www.gaiaflashframework.com
Hello there! I’ve seen these days your ‘J2EE/Flex database application generation’. Simple and nice. I am having some truble doing the same stuff, an ugly NullPointer right at the end (http://livedocs.adobe.com/flex/3/html/help.html?content=data_3.html). PS: nice page.
Mockito for flex http://bitbucket.org/loomis/mockito-flex/ a simpler mocking
http://www.hydramvc.com/
CopperCube – 3D engine for Flash and Windows
http://www.ambiera.com/coppercube/index.html
Yes, definitely don’t forget RobotLegs:
http://robotlegs.org/
(Shaun mentioned it above but didn’t provide a link.)
For some idea of popularity (or at least the ability for the frameworks to campaign for votes):
http://stacyyoung.org/2009/10/17/flexas3-framework-poll-results/
The Flight Framework is an MVC framework focused on simplicity and utility:
http://www.flightxd.com/flightframework
- looks like there’s a flite framework mentioned as an extension to PureMVC? Not to be confused with the MVC framework Flight Framework.
[...] Flex Framework Posted on November 19, 2009 by mylblog http://corlan.org/flex-frameworks/ [...]
Declarative graphics framework
http://www.degrafa.org/
dpHibernate – http://code.google.com/p/dphibernate/ Allows for lazy loading across BlazeDS and Hibernate. New features recently added allow for simple entity persistence from the Flex Client to Hibernate.
Robotlegs: DI, IoC and MVCS micro-architecture
http://robotlegs.org
Mockito-Flex: mocking framework
http://bitbucket.org/loomis/mockito-flex/wiki/Home
Hamcrest-AS3: matchers toolkit for unit testing and mocking
http://github.com/drewbourne/hamcrest-as3
Wow! I agree, this is a good post. Now I am getting a headache about what to learn. Lord, help me!
Oh yeah, I also use the casalib framework @http://www.casalib.org
Robotlegs – http://robotlegs.org
hehehe… another example proving that the beauty of standards is that there are so many to choose from… anyways, nice recap… you should create something other than a blog-post to capture the continouos development in this area… perhaps create and help maintain this entry…
http://en.wikipedia.org/w/index.php?title=Flex-frameworks&action=edit
Btw… thanks for a nice evening the other night in Bucharest.
Another one for your “Building and Continuous Integration” section…
http://projectsprouts.org
It makes SWF development suck a lot less.
“Selenium (Open Source) – API for Selenium” yes, but what is Selenium? It’s API for it’s self?
[...] Frameworks ESCRITO POR Tmeister EN November – 19 – 2009 Esta es una excelente recopilación de Frameworks para trabajar con Flash/Flex, [...]
Hi,
Is there any content management system that you can recommend for the Flex development ?
Thanks,
FreeSpin3D
http://www.freespin3d.com/
FreeSpin3D™ Extension for Adobe® Flash® and Flex® allows rich media designers and developers to easily create advanced interactive 3D content for Adobe Flash in minutes. FreeSpin3D is the only real-time 3D technology that utilizes the Adobe Flash animation timeline and provides live visual feedback of the 3D model position and rotation on the Flash stage. By utilizing the Adobe Flash designer toolset and providing built-in interactive 3D behaviors that can be applied with a single mouse click, FreeSpin3D is simple enough for beginning designers, while the FreeSpin3D advanced API allows Flash and Flex ActionScript developers to push the limits of 3D delivery over the web.
Yogurt 3d
http://www.yogurt3d.com
Yogurt3D Game Engine (Y3D) is a 3D Flash engine that works inside your browser via Adobe Flash Player and doesn’t require users to download plug-ins. Yogurt3D’s core part, SwiftGL, is based on an OpenGL compatible framework and will be free software. This means developers who already program in OpenGL or are familiar with APIs can easily develop 3D Flash games and applications. Y3D supports major 3D modeling and animation platforms and enables user-generated content such as avatars, interiors, objects and animations.
- Flashdraw3D
http://code.google.com/p/flashdraw3d/
This library is designed to implement the same features as the 2D drawing API. Except in 3D.
- Infinity3D
http://www.infinity3d-engine.com/ru/
-WireEngine3D
http://www.3key.at/we3d/forum/
-AS3Mod
(vertex animation – cross-engine modifier library for flash 3d)
http://www.everydayflash.com/blog/index.php/2008/09/03/as3dmod/
Merge with this one ;)
http://www.adrianparr.com/?p=83
aswing
http://www.aswing.org/
[...] Corlan, a Platform Evangelist with Adobe will also be speaking. His blog has an excellent list of Flex frameworks and libraries which is definitely worth checking [...]
Good post. Observed a typo, flight framework is listed as fight framework. Hope you won’t fight me ;)
Tulsi
UML4AS – UML for ActionScript and Flex is a modeling tool tailored for AS & Flex. It supports AS code sync and has a “developer friendly” approach regarding its usage and integration in the IDEs. http://www.uml4as.com
Cristian.
Hello Mihai, sorry for this late comment but I’ve realized that you have collected a great set of flex, flash and actionscript libraries and tools and I want to share with you our own MVC framework. Hope you consider it good enough to include it in your list (copy&paste from our google code site):
“CycleFramework is a view management and development oriented framework for applications implemented with actionscript3 and flex technologies. It is developed and mantained by Cycle-IT.
CycleFramework is specially useful for management-like applications, where the different view states follow a root-branch-leaf pattern clearly: the application will have a well defined navigation tree.”
Url: http://code.google.com/p/cycleframework/
Mirror: http://cycleframework.riaforge.org/
License: Open source (MIT)
[...] There are several frameworks available (list taken from http://corlan.org/flex-frameworks/): [...]