Skip to end of metadata
Go to start of metadata

The Fluid Project architecture is intended to provide an infrastructure that enables rich customizations of an application's user interface appearance and behaviour based on the needs of both institutions and individual users. It will form the basis for a new presentation layer that is compatible across a suite of community source applications including Sakai, uPortal, and Kuali Student. It is envisioned that this technology may also eventually be integrated into other open-source applications such as Moodle. The goal of this architecture is to help improve the consistency, usability, accessibility, and localization of user interfaces and to facilitate the broader sharing, refinement, and testing of UI components.

The Fluid architecture will use emerging client-side user interface technologies such as DHTML, JavaScript, and Ajax to create a clean separation of UI concerns from the underlying application service layer, emphasizing common web idioms such as server statelessness, meaningful URLs, and a RESTful approach to client-server communication. Fluid will interoperate with existing presentation technologies such as Reasonable Server Faces (RSF), Dojo, and other tools.

This preliminary outline of the Fluid architecture attempts to balance the diverse needs of our collaborating community source projects by addressing technical challenges in a realistic and forward-looking manner. Although this architecture plan is intended to be clear and stable, we have chosen in many cases to refrain from committing to very specific technology dependencies in order to remain responsive to the feedback and needs of both users and project stakeholders during the planning phase. We encourage your comments and feedback regarding all aspects of the application architecture; you are invited to get involved and help with the development of Fluid. For more information, please join our mailing lists or contact Colin Clark, the Fluid Project technical lead.

 The Fluid Architecture

  • No labels