List of Flex frameworks. Flex frameworks are software libraries that assist developers in building rich web applications on the Apache Flex platform.

List
 Tide, part of the Granite Data Services platform.
 Swiz
 Parsley
 Cairngorm
 PureMVC
 DropAS3
 Fabrication
 Mate
 RobotLegs

Cairngorm
Cairngorm is one of the primary open-source software frameworks for application architecture in Adobe Flex. It was developed by iteration::two, which was acquired by Macromedia in 2005. It is part of the Adobe Engagement Platform. Adobe Labs features Cairngorm as the architectural framework for rich web application programmers.

Cairngorm is based on the MVC model. It is specifically designed to facilitate complex state and data synchronization between the client and the server, while keeping the programming of the View layer detached from the data implementation.

The role of the View layer in a Cairngorm application is to throw events and bind to data stored in the Model. Components on the View can bind to Value Objects or other properties in the Model (data) layer.

In a Cairngorm Model, related data are stored in Value Objects (VOs), while simple variables can be stored as direct properties of the ModelLocator class. A static reference to the ModelLocator singleton instance is used by the View layers to locate the required data.

The Controller is the most sophisticated part of the Cairngorm architecture. The Controller layer is implemented as a singleton FrontController. The FrontController instance, which receives every View-generated event, dispatches the events to the assigned Command class based on the event's declared type.

The Command class then processes the event by running the Command class' execute() method, which is an ICommand interface method. The event object may include additional data if required by the developer. The execute() method can update the central Model, as well as invoke a Service class which typically involves communication with a remote server. The IResponder interface, which is also implemented by the Command class, includes onResult and onFault methods to handle responses returned from the invoked remote service.

A Cairngorm application can be programmed to manage any server architecture/schemas.

External links 
 Hello World Example using Cairngorm
 Official Adobe Cairngorm Site
 Video Tutorial Series on Cairngorm 
 How to Use Design Patterns, A Conversation with Erich Gamma 
 Cairngorm Console: a Flex plugin application for live inspection and debugging of Cairngorm Framework  
 Cairngorm extension for handling commands results

PureMVC

PureMVC is a framework for creating applications based upon the well-established model–view–controller design pattern. The free, open source framework was originally implemented in the ActionScript 3 language for use with Adobe Flex, Flash and AIR, and it has since been ported to nearly all the major web development platforms.

Granite Data Services

Granite Data Services (GraniteDS or GDS) is an event-driven, cross-framework, Application Client Container (ACC). It aims at greatly simplifying the development of rich web applications through client-side data management, real-time messaging, transparent lazy-loading, paged queries, code generation and other features.

The entire framework is open-source, but commercial use of some "advanced modules" requires a commercial licence.

Supported Client Frameworks
 JavaFX
 Flex
 Android SDK

References

Software architecture
Free computer libraries
Adobe Flex