Personal tools

Views

Spry:FAQ

From Adobe Labs

Table of contents

Spry framework FAQ

What is the Spry framework?

The Spry framework for Ajax is a JavaScript library for web designers that provides functionality that allows designers to build pages that provide a richer experience for their users. It is designed to bring Ajax to the web design community who can benefit from Ajax, but are not well served by other frameworks. The Spry framework is HTML-centric, and easy to implement for users with basic knowledge of HTML, CSS and JavaScript. The framework was designed such that the markup is simple and the JavaScript is minimal.


Why did Adobe create a new Ajax framework?

In talking with web designers, we realized that while many were interested in creating rich interfaces, they weren’t sure how to get started with Ajax. As we looked at the landscape of Ajax frameworks, we realized that many of them were more oriented to the skills of a programmer and were focused on application development. Based on the needs of the design community, we wanted to put forth an approach that is very “HTML-centric” to help them add basic interactivity to their page designs. In other words we’ve deliberately avoided inventing a whole new tag set or imposing a full programming model because we believe doing so would result in a much steeper learning curve for web designers. With Spry, you can simply infuse your HTML with dynamic data. We intend to integrate authoring support in future versions of our tools to further improve the experience for web designers and developers.

We haven’t ruled out extending an existing framework somewhere down the road. We just think the best way to quickly evolve our unique approach is to iterate on it separately first. As things progress, we will have to evaluate if it makes sense to donate Spry to an existing framework or continue releasing it as a separate project.


What is Ajax?

Ajax is an acronym for “Asynchronous JavaScript and XML.” It is a concept for how Web developers can use various techniques to update web pages without requiring visible refreshes and without the need for browser add-on technologies. Ajax is not a product, company, or trademark.


What is the key benefit of the Spry framework?

Spry is HTML-centric, which allows web designers to use existing skills to get into designing rich pages with Ajax without having to learn any new languages or adopting a full programming model. A web designer can view the source of a page built using Spry and quickly and easily understand what is happening and how to further customize it.


Who is the target audience for the Spry framework and who benefits from it?

The target audience is web designers who are looking to embrace Ajax as a way to add basic interactivity to their page designs. The Spry framework can easily be integrated into a user’s existing workflow in Dreamweaver or their web authoring tool of choice.


Can I use Spry in conjunction with other Ajax frameworks?

Yes. Spry allows web designers to get XML data into their page without having to write more than one line of JavaScript for each data source they want to use. Everything else is just plain markup with some special attributes and data place holders. Designers style pages that contain Spry attributes and data references just as they would any other web page they were working on, or work with a developer to augment it with other technologies, such as rich Flex data components or Ajax widgets from another framework. The Flex-Ajax Bridge and Ajax client for Flex Data Services provide a starting point for this type of integration.


What are the issues or limitations in using Spry in conjunction with other Ajax frameworks?

The Spry framework includes the use of the Google XPath library. As a result, Spry may break when used in conjunction with the Prototype Ajax library. The Prototype Ajax library breaks this XPath implementation, and other third-party JavaScript libraries, because of the way the Prototype library extends the JavaScript built-in types. We have taken steps to ensure compatibility with Prototype and other frameworks. Due to the dynamic nature of the Ajax world, incompatibilities may arise. We are determined to make sure we play well with others.

Do I need to have JavaScript enabled for Spry to work?

Yes, you must have JavaScript enabled for Spry to work because the framework consists of JavaScript functions. If JavaScript is disabled in the browser, the functions will not work correctly.


The demos don’t work when I turn off JavaScript in my browser. What is wrong?

This first release of Spry is a preview of the data capabilities we are building into the toolkit. The focus of this drop is to help make it easier for web designers to incorporate data into their HTML pages from external sources dynamically without having to write the JavaScript to do this themselves. The demos were written to give you a proof of concept on how Spry could help you incorporate data into pages that handled data differently. We went with a very barebones implementation to keep the code lean and easy to read and understand how the framework works. As such, the demos are not fully polished, fully accessible, or gracefully degradable. If you need to support the case where JavaScript is turned off in your own Spry pages, we recommend that you use a server-side redirect to a static page, or rely on noscript tags in your page to either perform the redirect or notify the user that they must enable JavaScript.


What are your plans for supporting accessibility in Spry?

Industry best practices for accessibility support in Ajax is still evolving. Spry 1.6 focuses on accessibility for all widgets, best practices and web standards. We explain how to make pages that are accessible and degrade gracefully.

What browsers does Spry work with?

We have tested Spry with: • Firefox 1.5 +(Windows and Mac) • Netscape 7.2 (Windows) • Internet Explorer 6+ (Windows) • Safari 2.0.3 (Mac)


Do I have to use XML files for the datasets?

No. Spry supports XML, JSON and HTML datasets. Pages can be written in ColdFusion, PHP, ASP or other scripting languages that output these formats.

What is the licensing for Spry?

Spry is available under the BSD license.


What is the price for Spry?

Spry is free.


What is the goal in putting Spry on Adobe Labs?

We are looking to build a community around the framework to provide feedback and to help drive the future direction of the framework.

Retrieved from "http://labs.adobe.com/wiki/index.php/Spry:FAQ"