Javascript Multipurpose Frameworks
From Ajax Patterns
| Revision as of 22:44, 29 July 2007 83.236.145.99 (Talk | contribs) twoBirds (April 2007) ← Previous diff |
Revision as of 22:45, 29 July 2007 83.236.145.99 (Talk | contribs) twoBirds (April 2007) Next diff → |
||
| Line 662: | Line 662: | ||
| twoBirds is based on web design principles (XHTML, CSS) for design, but has a component-like programming logic to allow for unlimited complexity. twoBirds uses jQuery as selector and effect lib as standard, but can generally bind any lib that doesn´t change JS standard syntax and has a clear namespace distinction. It can be used standalone also, no other lib is required. | twoBirds is based on web design principles (XHTML, CSS) for design, but has a component-like programming logic to allow for unlimited complexity. twoBirds uses jQuery as selector and effect lib as standard, but can generally bind any lib that doesn´t change JS standard syntax and has a clear namespace distinction. It can be used standalone also, no other lib is required. | ||
| - | For more information see '''[http://blog.phpbuero.de/?page_id=10 AJAX framework typology]. and '''[http://blog.phpbuero.de/?page_id=9 twoBirds Introduction]. For more information contact the programmer via '''[http://www.phpbuero.de/ phpBuero] | + | For more information see '''[http://blog.phpbuero.de/?page_id=10 AJAX framework typology]''' and '''[http://blog.phpbuero.de/?page_id=9 twoBirds Introduction]'''. For more information contact the programmer via '''[http://www.phpbuero.de/ phpBuero] |
| = UI4W (from 2006) = | = UI4W (from 2006) = | ||
Revision as of 22:45, 29 July 2007
This page is for larger, Pure Javascript, frameworks. Please see Ajax Frameworks for frameworks and libraries with server-side components, as well as smaller Javascript frameworks.
AJAX WebShop(from 1999)
AJAX WebShop is a comprehensive both browser-side and server-side AJAX framework named AROA (AJAX Remote Object Access)with cross browser support. The AROA framework is compatible with any server-side platform (e.g. Java, .NET, PHP). And also AJAX WebShop supports that you can develop your AJAX Applications in Java, .NET and PHP in a visual way by drag and pull.
- Free Personal Version for non-commercial / non-institutional use
- Visual IDE - Supports Java, PHP and .NET
- ALL In One Solutions - Throw away different plug-ins
- Over 50 AJAX widgets / components AJAX WebShop 3
- Standard and sane AJAX framework - AROA, all widgets/components can be used by other standard AJAX framework
- Online AJAX demo's / starterkits Demo
- Commercial from JoyiStar (formed in 2005)( You have to pay in order to use this software !).
- AJAX WebShop supports the following browsers:
- Internet Explorer 5+ on Windows
- Firefox 0.8+ on any platform
- Mozilla 1.5+ on any platform
- Netscape 7.2+ on any platform
- Camino 0.8+ on Mac OS X
ActiveWidgets (from 2003)
ActiveWidgets is a powerful javascript component library which makes web application development a lot easier and more productive. The library includes -
- editable datagrid control
- virtual rendering (very fast for large datasets)
- XML, CSV, JSON data loading
- data formatting, cell editing and validation
- set of common UI widgets (tabs, combo, checklist etc.)
- CSS-based, fully customizable look
- Active user community, support forum
- Commercial from ActiveWidgets ( You have to pay in order to use this software!)
- ActiveWidgets minimum supported browser versions are:
- Internet Explorer 5.5
- Netscape 7.1
- Mozilla 1.4
- Firebird 0.6
- Opera, Safari - will be supported in version 2.0. (Released 8 Feb 2006)
- Paid $395.00 for developer licence, $2450.00 for site licence
AjaxFace (from 2005)
AjaxFace is an AJAX, JavaScript UI framework. It uses client-side rendering architecture. It features:
- High-level JavaScript API for building UI
- Open architecture for updating and retrieving data from the backend
- Automatic synchronization of data and UI
- Easy extensibility
- High performance
- Easy customization of look-and-feel through well-defined style sheets
- Click here for online Demos of sample applications and UI patterns
- Click here for the product overview in PDF format
- Commercial from VertexLogic ( You have to pay in order to use this software! )
Backbase (from 2003)
Backbase is a comprehensive browser-side AJAX framework with cross browser support. The Backbase AJAX framework is compatible with any server-side platform (e.g. Java, .NET, PHP, Coldfusion).
- Free Community Edition for non-commercial / non-institutional use
- Advanced tooling for .NET Developers - Visual Studio 2005 plug-in
- Advanced tooling for Java Developers - JSF taglib / Eclipse integration
- Over 80 AJAX widgets / components Backbase Explorer
- Active AJAX developer community Backbase DevNet
- Online AJAX demo's / starterkits Check Out
- Commercial from Backbase (formed in 2003)( You have to pay in order to use this software !).
- Backbase supports the following browsers:
- Internet Explorer 5+ on Windows
- Firefox 0.8+ on any platform
- Mozilla 1.5+ on any platform
- Netscape 7.2+ on any platform
- Camino 0.8+ on Mac OS X
Bindows (from 2003)
Bindows is a Graphical User Interface (GUI) software framework for development of rich AJAX and Web 2.0 web applications. It can generate the exact look-and-feel of a Windows GUI (Windows) on web pages.
The Bindows framework is based on Dynamic HTML and the programming language used is Application Description Files (ADF), executed at the client's end as JavaScript. When the web application is run, the scripts are downloaded from the server as XML|XML files and executed at the client's end.
The framework follows the Swing programming and JavaScript object models. Class names start with 'Bi', e.g., BiObject, BiRadioButton, etc. The name Bindows comes from a combination of Business Intelligence (BI) and windows, BI being one of the interests of the company MB Technologies, responsible in creating the framework.
Bindows applications are agnostic to:
- Server - any server (Java, .NET, PHP, etc. can be used with Bindows)
- Backend platform - Any backend hardware and backend software
- Operating system - Any operating system can be used on the client (as long as it includes a supported browser)
- Language - All languages supported. Bindows supports Unicode
- Browser - most browsers are supported (i.e., Internet Explorer 5.5 and higher, Mozilla 1.4 and higher, Netscape 7.1 and higher, Firefox, K-Meleon, and Camino)
Bindows supports the following widgets: labels, buttons, check boxes, radio buttons, text areas, menus, toolbars, statusbars, tool tips, grids, trees, sliders, spinners, progress bars, gauges, image maps and live vector graphics. Commercial ( You have to pay in order to use this software! )
Charting & Vector Graphics
Bindows supports client-side charting in all supported browsers, which is both rich, scalable and dynamic (animations), that are designed to be easily extended and enhanced:
- Line charts
- Columns and bars
- Pie charts
- Stacked columns and bars
- Percentage stacked columns and bars
- Gauges
- Grids
Vector Graphics
The Bindows Graphical-Links API - BiLink API enables drawing of graphical links (lines and arrows) that join elements. The properties of the links, including color, width and style, can be customized. The basic task of the API is to manage the anchoring of the link to the elements. Live sample
Complete Animation Library
Bindows animation library enables adding animations to Bindows components - thus creating visual effects like pulsating buttons, fade-ins, fade-outs, animated movement and resizes.
Section-508 Accessibility
Bindows 2.0 is now the first Ajax framework with enhanced support for section 508 accessibility compliance. Bindows 2.0 enables developers to reach all audiences effectively and efficiently by building Ajax and Web 2.0 applications that meet Government and international standards for accessibility.
The Bindows framework enables development of Ajax and Web 2.0 applications that work with leading screen readers, such as JAWS, without requiring any download or installation (zero-footprint).
Internationalization & Localization
Bindows provides full support for internationalization and localization. Localized Bindows applications (including combined locales) are in use across the globe. Checkout the Bindows localized sites listed in the External Links below.
Next Major Release
Next major release of Bindows (code name "Torne") will include two-directional data binding and a visual layout development tool.
Versions
- 0.9 - 2003 August
- 1.1 - 2004 February
- 1.20 - 2004 August
- 1.25 - 2004 November
- 1.3 - 2005 February
- 1.5 - 2005 July
- 1.51 - 2005 September
- 2.0 - 2006 June
- 2.5 - 2006 October
- 2.55 - 2006 December (latest release)
- 3.0 - 2007 May
- Torne (code name) - due in 2007
Adds-on Tools
Bindows Benchmarking - available (free)
Bindows Linker - The Bindows Linker is a tool that reduces the code size of a Bindows application by including only the classes and methods required. Decreasing the code size results in improved performance. This is visible at startup and also during runtime due to the decreased memory usage.
Bindows Compiler - The Bindows Compiler is a tool that converts Bindows ADFs to JavaScript, for increased execution speed.
Bindows IntelliJ Plugin - Significantly enhance and expedite the development process
InfiView - Interactive & Infinite Ajax Graphical Maps and Diagrams
External links
- Ajax Projects
- Bindows Official website
- Bindows blog
- Japanese website (localized)
- Chinese educational website (localized)
- Brazilian website (localized)
- Russian website (localized)
- French website (localized)
- InfiView website Ajax diagrams
Cerny.js (from 2006)
Cerny.js is a JavaScript library trying to ease the development of projects in large teams.
It makes use of method call interception and aims at separation of concerns. Cerny.js can be used as a base library or can temporarily be pulled in the project for code analysis. It offers solutions for
- type checking,
- programming by contract,
- logging,
- code profiling and tracing,
- dependency management, and for
- validating a JavaScript object against a schema.
crossvision Application Composer (from July 2006)
crossvision Application Composer is a framework incorporating Application Designer with the purpose of easily defining the user interface of applications in a Service Oriented Architecture (SOA). In addition to the Application Designer capabilities crossvision Application Composer offers a BPEL engine and a service repository integration with crossvision Centrasite.
- BPEL-based orchestration
Leverages the open BPEL standard to orchestrate page flow and Services
- Web Services integration
Define UIs and declaratively bind UI data and events to the calling of one or more web services.
- Service Repository Integration
The crossvision Centrasite repository knows about Web Service consumption and as consequence can e.g. tell which UIs are affected when a Web Service gets modified.
crossvision Application Designer (from July 2006)
crossvision Application Designer comprises an Ajax framework and a web based IDE as well as an IDE plugin for Eclipse. This set of tailored tools allows business analysts as well as developers to compose business applications based on existing systems and provides the required capabilities to build rich and intuitive Web 2.0 user interfaces. Check out this interactive demo.
- AJAX-based UI technology
Create rich Web 2.0 Internet applications using AJAX (asynchronous Java Script and XML) technology, for superior user experience within ubiquitous browser technology.
- WYSIWYG layout editor
Create rich layouts using a comprehensive library of controls without the need to code and know HTML, CSS or JavaScript.
- Comprehensive layout controls
In addition to traditional controls, the library includes controls to generate reports, right-click menus, tab or multi-pane interfaces and hot keys without worrying about the complexity of their implementation.
- Google maps controls
Ready-to-use controls for Google maps functionality within your applications! You can view a demo here.
- pinEdit Word processor controls
Provide your end users with the same text formatting capabilities that they know from thick client office applications. You can try it yourself here.
- Multi-language translation assistant
Localize any application rapidly and easily.
- Style sheet generator
Create style sheets without knowledge of CSS.
- Support for a broad range of J2EE servers
crossvision Application Designer runs on the application server of your choice, including Tomcat, JBoss, IBM WebSphere, BEA WebLogic or SAP NetWeaver.
- Active developer community.
DOJO (Under development; from September, 2004)
DOJO offers comprehensive widget and browser-server messaging support.
- Extensive deployment support: dependency-based packaging, compression of required libraries into a single download. (See On-Demand Javascript pattern).
- Framework for creation of custom Javascript widgets.
- Library of pre-built widgets.
- Solid drag-and-drop, effects, and generic animation support
- Browser-server messaging support - XMLHttpRequest and other mechanisms.
- Event management. (See Distributed Events pattern).
- Support for bookmarkability and manipulating URLs in the browser.
- Open-source license (Academic Free License 2.1). Led by Alex Russell of SitePen.
Comments:
- Examples now online, 22 May 2006, GER
Nitobi (Formerly eBusiness Applications - EBA) Ajax Components. (Since 2002)
Nitobi offers self-contained AJAX components enabling data entry and lookup.
- Library of pre-built widgets supporting multiple back-ends (Java, PHP, ASP, .NET, Coldfusion).
- Excel-like data entry and grid tool (See Data Grid pattern).
- Multi-mode combobox enabling configurable livesearching (Smartsearching, autocomplete, compact, etc) (See Live Search pattern) (See Suggestion pattern).
- Active user community Nitobi Developer Forums
- Online Ajax demos:
- Commercial from Nitobi
- Browser Support
- Internet Explorer 6.0+
- Firefox 1.0+
- Netscape Navigator 7.0+
- Camino
Engine for Web Applications (Since 2002)
Engine for Web Applications is a framework for building modular components for Web applications, and separating content from functionality.
- Configurable deployment.
- Registry for storing, retrieving, and destroying objects that conform to the common interface.
- Message service for intra-object publications and subscriptions.
- Transaction service for asynchronous multi-object communication.
- Task service for bootstrapping client-side modules of a Web application, and creating dependency-based task lists. Can load XML-based task.
- Easily create scoped and redistributable components in XML with automatic event hook-up and containment.
- Store and retrieve form field values regardless of whether the form field still exists.
- Monitor service for easily creating beacon and AJAX monitoring solutions
- API Documentation
- Demonstrations with source
- Open-source by Stephen W. Cote under a custom license.
Ext JS - JavaScript Library (from 2006)
Ext is a library of reusable JavaScript widgets and classes that extends libraries; such as the Yahoo! UI Library, jQuery and Prototype.
Formerly known as yui-ext. As of February 2007 it has changed its name to Ext.
- API Documentation
- Crossbrowser - Works with any modern web browser: IE, Firefox, Safari, Opera.
- CSS-based - fully customizable look. (xp, vista, aero themes currently supported)
- Open Source - The library is released under the LGPL license.
Live demos: (source included)
- ext 2.0
- ext 1.1
- ext 1.0
- Forms
- Grid
- Menu
- yui-ext 0.40
Freja (from 2006)
Freja is a javascript MVC (Model-View-Controller) framework. Freja stands for Framework for REstful Javascript Applications. It offers the following benefits:
- Geared toward single-screen, zero-latency web applications.
- Excellent scalability (much less server round-trips).
- True MVC separation.
- True Server-side / Client-side code separation.
- Very light footprint. Only a handful of methods to learn (the framework is 25kb uncompressed).
- Based on Open Standards (XML/XSLT).
- Works with any modern web browser: IE, Firefox, Safari, Opera.
- Plays well with other javascript toolkits and libraries (prototype, scriptaculous, dojo, etc..). Freja is not "yet another Ajax library", it is a Ajax-based high-level framework. It is not its purpose to provide drag&drop functionality or visual effects, but it will let you use your favorite javascript library to do so.
- See Tutorials and Documentation
- Open-source under CC-GPL.
gara (from 2007)
gara is a JavaScript-Toolkit. The gara toolkit comes with two powerful packages to create Rich Internet Applications (RIA). The jsWT (JavaScript Widget Toolkit) package for the UI-widgets and the jsFace package to support the MVC design-pattern.
Gravey (aka Gravy) (from 2005)
Gravey is an all JavaScript library that supports browser based Single Page Applications built following an Object-Oriented Model-View-Controller approach a la "fat GUI" frameworks. The Gravey AJAX framework is compatible with any server-side platform (e.g. Java, .NET, PHP, Coldfusion). This platform is under constant development as it is the basis for several enterprise Banking applications.
- There are published articles describing its techniques collected here
- Gravey supports the following browsers:
- Internet Explorer 5+ (complete framework and all demonstration applications)
- Firefox 0.8+ (bottom layers of framework, higher layers in process)
- Mozilla 1.5+ (bottom layers of framework, higher layers in process)
- Netscape 7.1+ (bottom layers of framework, higher layers in process)
JackBe (From 2002)
JackBe NQ Suite is complete set of development tools that allows rapid development of sophisticated, rich-client applications using AJAX. JackBe was the first company to provide a visual GUI development tool for AJAX applications, releasing version 1.0 of the JackBe GUI Builder in 2003. Advantages include:
- AJAX-based - secure, standards based, no plugins.
- Packaged Platform - avoid the pain of doing it all yourself.
- Visual Development - dramatically simplifies AJAX programming.
- JackBe Markup & API - program in the mode of your choice.
- Cross-Browser - support for all major browsers. today.
- Integration - integrates with existing server-side code and services.
- Performance - leading user experience, even on dial-up connections.
Javeline PlatForm
Javeline PlatForm is a unique software development kit for building next-generation applications. With Javeline PlatForm developers can deliver applications to modern browsers on all platforms, in shorter development cycles and with more functionality. Javeline PlatForm outperforms other toolkits in two key aspects – development time and user functionality.
For coupling data to the interface, Javeline PlatForm embodies a revolutionary technology called SmartBindings. SmartBindings define how data is transformed to the user interface, including standard operations for manipulating data, but also more advanced features such as Undo and Drag & Drop. SmartBindings are defined in XML-based property sheets, greatly reducing the amount of code to be written – thus minimizing the chance of errors and speeding up the development cycle. Through SmartBindings, developers can quickly create the basic structure of their application without writing a single line of code. This means developers can economically explore multiple variations of a prototype or quick-build a complete concept application for winning a pitch. Since SmartBindings are an abstract layer between data and interface, it makes changing the data-structure or the interface a trivial affair, even at the final stages of the project. It also means developers and designers can truly work in parallel, further speeding up overall development.
Data is delivered to the application via the Open Source Javeline TelePort layer, making Javeline PlatForm applications agnostic of back-end technology. Javeline TelePort takes care of the communication between the client and the server. It automatically handles errors, time-outs and retry. TelePort features an advanced polling interface for controlling reconnecting and polling frequency. Javeline TelePort supports all major protocols for web services and the Javeline-specific protocols HTTP-Socket and Javeline PHP Protocol. Since Javeline has released TelePort under the Open Source GPL license, adding support for other protocols is easy.
Javeline PlatForm can be extended with various components available from Javeline, such as DeskRun™ and MediaFlow™. DeskRun delivers a FrameWork application to the Windows desktop from the exact same code base. MediaFlow allows extensive manipulation of media, for instance the realtime subtitling of video-streams.
Javeline® PlatForm Suite includes the following tools and libraries:
- Javeline PlatForm Libraries:
- Javeline Core Library
- Javeline Component Library
- Javeline TelePort Library
- Manual and reference guide
- Documented and Commented Example Code and Demos
- Windows 2000 and Perspex Skin set
For documentation and the beta release visit the Javeline Developer Center at developer.javeline.net.
For Live demos and Tutorials Check out www.ajax.org
Documentation:
More information:
Download Javeline PlatForm Beta:
Licence
- GPL
- Commercial
JsLINB - Javascript framework of LINB (since 2006)
jsLINB is a javascript toolkit that provides complete client-side solution for most modern browser (IE6.0+ / firefox1.5+ / opera9+ / Safari2.0+, Safari test little). It can help you implement AJAX-enhanced RIA application - more powerful and easier than ever before. The compressed core code is only 50k, including type detection , force type , comprehensive and flexible event model , event customer, observer and tie/untie , boxing/unBoxing/reBoxing model , straight call , dom creator , selector, iterator and manipulation , css handler , css class handler , dom attribute handler , perfect OO implementation , javascript thread , advance Ajax , powerful Drag Drop , beyond widgets(standard and custom appearances, templates, behaviors...) , and more...
Features
* Powerful event system: multiple event listeners,before/on/after supported * OO Model: A perfect OO implementation * Thread: A javascript thread implementation * Straight Call supported: forget "Import package before using its' code". * Advanced Drag&Drop: A DD implementation for drag any thing in the Web. * Dynamic and Chainable Methods: less code, more functions. * Advance Ajax model: include onSuccess onFail onTimeout onRetry and more... * beyond widgets : custom widgets in four ways: appearance, template, behavior and dataModel * boxing/unBoxing model * A developing web IDE
Online Demos
* Visual JavaScript for building web IDE * Flash Demo for VisualJS * demos created by VisualJS
* timeline widgets
Browser Support (tested)
* Internet Explorer 6.0+ * Firefox 1.5+ * Opera 9+ * Safari 2+(test little) * other modern browsers too.
Licence :
* Open source * Commercial
JsRia - Javascript Rich Internet Application (since 2005)
[1] JsRIA is a opensource framework enabling rich client interface development. It's pure javascript and is completely independant of the server side technology. The client interface is described by an xml file (or dynamically in javascript if you need that). JsRIA is completely object oriented (javascript components, xml description, css style) and you can very easily build a hierarchy for your interface objects. You also can use AJAX technology to bring really dynamic interface to your users. Numerous functions are provided to parse and use xml flux coming from your server.
Online Demo : [2]
Browser Support :
* Internet Explorer 6.0+ * Firefox 1.0+ * Netscape Navigator 7.0+ * Opera8+
Licence :
All JsRIA code and documentation are released under the Apache Software Licence V2. JsRIA distribute third party tools and components with compatible licences.
Macao - The Web Animation Framework (developed since 2000 published 2005)
Macao is a framework based on JavaScript and DHTML for building animated interactive homepages and applications with a focus on games. It features:
- Event driven architecture.
- Action-based definition of objects behaviors.
- Build in support for internationalization.
- Complete Java-style API documentation.
- Detailed step-by-step tutorial on how to build Macao pages.
- A road editor is available for building pages with road maps.
- Controls for graphic adventures.
- A module for card games.
- Can be hosted on any static Web server.
- Can also be run from the local file system.
- GNU General Public License
More information:
MochiKit (from 2005)
MochiKit is a highly documented and well tested, suite of JavaScript libraries that will help you get your work done, fast. Authors borrowed good ideas from Python, Objective-C, etc. and adapted them to JavaScript. It features:
- MochiKit.Async - manage asynchronous tasks
- MochiKit.Base - functional programming and useful comparisons
- MochiKit.DOM - painless DOM manipulation API
- MochiKit.Color - color abstraction with CSS3 support
- MochiKit.DateTime - "what time is it anyway?"
- MochiKit.Format - string formatting goes here
- MochiKit.Iter - itertools for JavaScript; iteration made HARD, and then easy
- MochiKit.Logging - we're all tired of alert()
- MochiKit.LoggingPane - interactive MochiKit.Logging pane
- MochiKit.Visual - visual effects
- MIT license or Academic Free License, v2.1.
Mootools
Mootools is a compact, modular, Object-Oriented javascript framework designed to make writing extensible and compatible code easier and faster. MooTools lets you get the job done efficiently and effectively.
- Pros
- It is lightweight, powerful and makes use of many of the new javascript coding functions that we’ve become accustomed to (such as $()).
- The FX library is incredibly solid, doesn’t require div-itis, and uses the same physics easing equations as most flash users.
- Browser Compatibility -mootools is compatible and fully tested with Safari, internet explorer 6 and 7, Firefox (and its mozilla friends), Opera and Camino.
- License - mooTools is released under the Open Source MIT license, which permits you to use it and modify it in every circumstance.
Open Rico (Under development; from May, 2005; based on earlier proprietary framework)
Open Rico is a multi-purpose framework with support for Ajax infrastructure and user interaction.
- An XMLHttpRequest response can be routed to one or more callback operation, DOM object, or Javascript object.
- Easy drag-and-drop.
- Ajax animation such as scaling and transitions (and presumably the increasingly common idioms such as progress indicators and fading technique?)
- "Behaviors" - Essentially a widget library.
- External tutorial by Yonah Russ of Mirimar?
- Builds on prototype library.
- Open-source. From Sabre Airline Solutions. By Bill Scott, Darren James, and others.
OpenLink AJAX Toolkit, a/k/a OAT (since 2006)
OAT is a JavaScript-based toolkit for browser-independent Rich Internet Application development. It includes a rich collection of UI Widgets/Controls, Event Management System, and a truly platform independent Data Access Layer called AJAX Database Connectivity (ADBC).
- Open source, released under GPLv2, found on SourceForge
- OpenAjax Compliant (as of March, 2007)
- Fully functional online demo
- Full documentation also online
- Widgets include Bar Chart, Pie Chart, Line Chart & Sparklines, Grid, Pivot table, Tree, Dock, Panelbar, Ticker, FishEye, WebDAV Browser, Timeline, RDF Graph, Variable upload, Input restrictions, Dimmer, QuickEdit, Combo list, Combo box, Combo button, Slider, Date picker, Color picker, Enhanced Anchor, and an RSS Reader.
- Libraries include JSON, Cryptography, Statistics, AJAX, Ghost Drag, OS-style Windows, Rounded Corners
- AJAX Database Connectivity, or ADBC, enables and richens Mapping Mashups, Pivot Tabless, Scrollable Cursors, and Data Modelling, through trivially easy binding of widgets to SQL (via XMLA), RDF (SPARQL), XML (HTTP), and Web Services (both SOAP & REST).
- Usage is as simple as including two .js files in the <head> portion of an HTML document, and specifying a list of features you want to use. The framework will build the dependency tree and dynamically include all needed (and no other!) files, minimizing client payload size.
- OAT has been tested in Gecko browsers (Firefox, Mozilla/SeaMonkey), IE6, Opera and Apple WebKit.
Plex Toolkit (Open Source RIA Framework and GUI Toolkit)
Plex Toolkit is an open source feature-complete DHTML GUI toolkit and AJAX framework based on a pure Javascript/DOM GUI tookit and AJAX framework. Uses the almost identical markup language to PXML (Flex) embedded in ordinary HTML documents for describing the UI. Binding is done with Javascript.
Pros:
- Full set of widgets such as datagrid, tree, accordion, pulldown menus, DHTML window manager, viewstack and more (over 60 libraries)
- Markup driven (makes it easy to build the interface)
- Interface components can be easily themed with CSS
- Client side XSLT for IE and Mozilla
- Well documented with examples.
- Multiple remoting transport options - XMLHttpRequest, IFrame (RSLite cookie based coming soon)
- Back button support (complete history management for all components)
- Support for YAML serialization
- Open-source under GPL, LGPL, or Artistic License (your choice) by Richard Hundt.
Cons:
- No animation framework
Prototype (From 2005)
Prototype makes it easy to use object-oriented concepts like classes and inheritance within Javascript. It also supports basic Ajax functionality such as web remoting.
- A project run in conjunction with Ruby on Rails, but can be (and certainly is) used independent of Ruby or RoR.
- Open-source by Sam Stephenson.
jQuery (From 2005)
jQuery jQuery is a new type of Javascript library. It is not a huge, bloated, framework promising the best in AJAX - nor is just a set of needlessly complex enhancements - jQuery is designed to change the way that you write Javascript..
- Open-source by John Resig.
qooxdoo (LGPL/EPL open-source, since 2005)
qooxdoo is one of the most comprehensive and innovative Open Source (EPL/LGPL) multipurpose AJAX frameworks. It includes support for professional JavaScript development, a state-of-the-art GUI toolkit and high-level client-server communication.
Framework
It is entirely class-based and tries to leverage the features of object-oriented JavaScript. qooxdoo is fully based on namespaces and does not modify or extend native JavaScript types. Most modern browsers are supported (Mozilla, IE, Opera; Safari to follow) and it is free of memory leaks. It comes with a comprehensive API reference, that is auto-generated from JavaDoc-like comments and from the syntax tree representing the code. The fast and complete JavaScript parser not only allows for doc generation, but is an integral part of the automatic build process that makes optimizing, compressing, linking and deployment of custom applications extremely simple.
GUI Toolkit
Despite being a pure JavaScript framework, qooxdoo is quite on par with GUI toolkits like Qt or SWT when it comes to advanced yet easy to implement user interfaces. It offers a full-blown set of widgets that are hardly distinguishable from elements of native desktop applications. Full built-in support for keyboard navigation, focus and tab handling and drag & drop is provided. Dimensions can be specified as static, auto-sizing, stretching, percentage, weighted flex or min/max or even as combinations of those. All widgets are based on powerful and flexible layout managers which are a key to many of the advanced layout capabilities. Interface description is done programmatically in JavaScript for maximum performance.
No HTML has to be used and augmented to define the interface. The qooxdoo user does not even have to know CSS to style the interface. Clean and easy-to-configure themes for appearance, colors or icons allow for a full-fledged styling that even supports runtime switching.
AJAX
While being a client-side and server-agnostic solution, the qooxdoo project does include complete implementations of RPC servers (currently Java, PHP, Perl) to demonstrate some of its advanced client-server communcation. An abstract transport layer supports queues, timeouts and implementations via XMLHttpRequest, Iframes and Scripts. Like the rest of qooxdoo it fully supports event-based programming which greatly simplifies asynchronous communication.
External links
Script.aculo.us (from 2005)
Scriptaculous builds on Prototype library to provide a Javascript with comprehensive Ajax coverage.
- Visual Effects (See One-Second Spotlight pattern)
- Drag-And-Drop (See Drag-And-Drop pattern)
- Unit-Testing (See System Test pattern)
- etc.
- Open-source by Thomas Fuchs and others. A project run in conjunction with Ruby on Rails, but can be (and certainly is) used independent of Ruby or RoR.
SmartClient (enterprise AJAX GUI system since 2000)
SmartClient from Isomorphic Software is the cross-platform AJAX GUI system chosen by top commercial software vendors, on-demand service providers, and enterprise IT developers for thousands of deployments since 2000.
- cross-browser foundation classes and services
- JSON or XML programming
- browser abstraction layer
- GUI component services
- logging and debugging services
- extensible GUI components
- navigation and command controls
- form controls and managers
- flat, hierarchical, and multidimensional grids
- containers and layout managers
- data & services stack
- client data caches and local operations
- client data model managers
- communication and protocol services
- visual development tools
- runtime console
- log viewer
- component inspector and editor
- admin console
- integrated developer reference
- SmartClient AJAX applications run on Internet Explorer, Mozilla, Netscape, Firefox, and Safari web browsers, on Windows, MacOS, Linux, and Solaris. Unlike other AJAX systems, SmartClient applications are fully functional even when ActiveX is disabled.
- See www.smartclient.com for a product brief, live demos, and downloadable SDK for SmartClient version 5.5.
- "We evaluated many alternatives, and Isomorphic provides the most mature smart client technology for zero-install web applications." - VP Tools & Technology, PeopleSoft
- Commercial product from Isomorphic Software
Subsys_JsHttpRequest
Subsys_JsHttpRequest - Russian Ajax framework with XmlHttpRequest support and dynamic "script src" generation to emulate Ajax functionality for old browsers, which not compatable with XmlHttpRequest.
Comments:
- english version available
ThyAPI (Under development; Since end of 2004)
ThyAPI is a library of DHTML reusable components. AJAX is only one of its features. Its main purpose is to allow the creation of full desktop-like applications in browser. ThyAPI is a library based on DynAPI, and Open-source (LGPL)
- Made entirely in DHTML (Javascript + CSS)
- Totally object-oriented, extensible
- XMLRPC protocol, for data exchange with the server. Plans to implement JSON-RPC.
- Interface definition entirely in CSS
- Working in Mozilla Firefox (version 1.0+) and Internet Explorer (version 6+)
- A DataSource component, to simplify linking of javascript widgets with server methods
- Cross-browser, cross-platform support (it inherits this characteristic from DynAPI)
- Aimed to provide RAD development of browser-based applications, and reuse of custom-made widgets
- Open Source (LGPL)
TIBCO General Interface (Open Source AJAX RIA Framework with commerical backing from TIBCO (Nasdaq: TIBX)) Update Oct.06
- TIBCO General Interface" is a mature AJAX RIA framework that's been at work powering applications at Fortune 100 and US Government organziations since 2001. In fact the framework is so mature, that TIBCO General Interface's visual development tools themselves run in the browser alongside the AJAX RIAs as you create them.
- Dozens of types of extensible GUI components
- Vector based charting package
- Support for SOAP communication (in adiition to your basic HTTP and XML too)
- Full visual development environment
- WYSIWYG GUI layouts
- step-through debugging
- code completion
- You can also download the next version of the product and get many sample applications from their developer community site.
- Available through Open Source BSD License or through TIBCO Licenseing as a means to get full support, warranty, indemnity, etc...
- Open Source BSD Licensed Version now available TIBCO General Interface Resorce Center
- Developer Community located at TIBCO Deveoper Network
Interactive Website Framework (from May 2005)
Interactive Website Framework is a project aiming to support the various aspects of Ajax infrastructure in the browser. Describes itself as a "framework for creating highly interactive websites using javascript, css, xml, and html. Includes a custom xml parser for highly readable javascript. Essentially, all the plumbing for making AJAX-based websites, as well as other common scripts.".
- Thread-safe XMLHttpRequest implementation
- Wrapper around XML document, so you can make more readable code:
var node = doc.groceries.frozen[0].pizza[0].size;
instead of manual navigation:
var node = doc.documentElement.firstChild.firstChild.getAttribute("size");
- Open-source license. By Brock Weaver.
TIBET (Early Access Releases available; from July, 1999)
TIBET "Enterprise Ajax" framework supporting XML-based authoring layered above extensive object-oriented JavaScript extensions. Initial development began in 1999 with a 1.0 version shipping in 2001 which ran on Nav4 and IE4. TIBET has been in continuous development since that time and has recently undergone a redesign to focus on XML-based authoring. Early Access releases of this new XML-focused version of TIBET are available from http://www.technicalpursuit.com.
twoBirds (April 2007)
twoBirds Prototype "Web Component Framework" modular, asynchronous, recursive on-demand web element loader including fw structure - backend independent .
twoBirds is based on web design principles (XHTML, CSS) for design, but has a component-like programming logic to allow for unlimited complexity. twoBirds uses jQuery as selector and effect lib as standard, but can generally bind any lib that doesn´t change JS standard syntax and has a clear namespace distinction. It can be used standalone also, no other lib is required.
For more information see AJAX framework typology and twoBirds Introduction. For more information contact the programmer via phpBuero
UI4W (from 2006)
UI4W is a Java Script User Interface library, aiming at providing widgets common in desktop UIs (such as tables, trees and tabs) to the web developer toolbox in a consistent way. It's based on MochiKittries to follow the same good practices such as 100% documentation coverage and extensive test suite .
The primary target is the data-centric web application, but applying some good stylesheets can make UI4W usable in sites where the look and feel should be somewhat special.
UI4W plays nice with asynchronous requests (the coolest AJAX part) but it's not in any way tied to them. In fact, UI4W uses only simple JavaScript objects or HTML attributes as the input, making it very flexible.
Yahoo! User Interface Library (YUI)
Yahoo! User Interface Library is a set of utilities and controls, written in JavaScript, for building richly interactive web applications using techniques such as DOM scripting, DHTML and AJAX. The library is released under the BSD license (Open Source)
WinLIKE - a real Window Manager for the Web
- WinLIKE is an easy and universally to integrate framework from CEITON technologies
- it provides Web application with real windows
- learn more about WinIKE Wiki: What is it?
- see all samples live at WinLIKE contents
Zimbra AjaxTK (Commercial-OpenSource RIA Toolkit)
Zimbra is a recently released client/server open source email system. Buried deep within this product is an excellent Ajax Tool Kit component library (AjaxTK) written in Javascript. A fully featured demo of the product is available on zimbra.com, and showcases the extensive capabilities of their email client. A very large and comprehensive widget library as only available in commercial Ajax toolkits is now available to the open source community. Download the entire source tree to find the AJAX directory which includes example applications.
- Description: Zimbra is a recently released client/server open source email system.
Pros:
- Full support of drag and drop in all widgets. Widgets include data list, wizard, button, text node, rich text editor, tree, menus, etc.
- Build system uses Ant and hosting is based on JSP and Tomcat.
- Very strong client-side MVC architecture based; architect is ex-Javasoft lead developer.
- Communications support for client-side SOAP, and XmlHttpRequest? as well as iframes.
- Support for JSON serialized objects, and Javascript-based XForms.
- Strong multi-browser capabilities: IE 5.5+, Firefox 1.0+, latest Safari
- Hi quality widgets have commercial quality since this is a commercial open source product.
- Widget library is available as a separate build target set from the main product.
- Debugging facility is built in to library, displays communications request and response.
- License terms making it suitable for inclusion in other commercial products free of charge.
Cons:
- Does not currently support: Keyboard commands in menus, in-place datasheet editing.
- Does not support graceful degradation to iframes if other transports unavailable.
- Documentation is lacking, but PDF white paper describing widget set and drag and drop is available.
- Open-Source License (Zimbra Ajax Public License ZAPL, derived from Mozilla Public License MPL) from Zimbra.
Time your website with
WebWait - from the creator of AjaxPatterns.org
