60 Quality AJAX Resources and Tutorials

Updated: August 21, 2007

AJAX is not a technology itself. Rather it is an approach to application development that usually includes a number of attendant technologies such as:

  • XHTML and CSS for markup and presentation
  • The Document Object Model (DOM) for dynamic display and interaction (accessed via a client-side scripting language, most likely JavaScript).
  • XML and XSLT for data exchange and manipulation
  • JavaScript to tie everything together
  • The XMLHttpRequest object (used to exchange data asynchronously with the web server)


The XMLHttpRequest is the defining technology of AJAX because it gives a web browser the ability to make dynamic and asynchronous data requests without having to unload and reload a page. This is what allows Web 2.0 apps to have such niceties as pulldown menus, spellcheckers, and live updates that provide a desktop-like feel.

XML is commonly used at the format for transferring data between the server and the client but you aren't limited to XML. You can use preformatted HTML, plain text and JSON and the files can be created dynamically by server-side scripting. You could spend years scouring the web for resources on each of these technologies but if you want to learn AJAX you are better off starting with the online resources that show you how to combine these technologies with the goal of delivering rich Internet applications (RIAs).

AJAX is not particularly difficult to learn and appeals to both experienced programmers and web designers alike but beginners will certainly benefit from the wealth of resources and extremely active community on the web. To help you find them, we've put together this list of the best AJAX resources the Web has to offer. You won't find any incomplete or out-of-date links here, as we've compiled 60 quality AJAX resources and tutorials.

Installation

Sometimes, the most time consuming part of learning a new programming language is simply installing a working version of the software. With help from these resources, you'll have AJAX up in no time. You'll first need to pick from a variety of popular AJAX frameworks from Adobe, Google, Microsoft, and other vendors.

Adobe Spry -- The Spry framework for AJAX is geared to web designers and as such is HTML-centric with just a smattering of JavaScript.

ASP .NET AJAX Library -- The ASP.NET AJAX Library is a good choice for those working in a .NET environment.

Google Web Toolkit -- While Spry is for the designers in the house, GWT goes the other way with an open-source framework that makes it easy for Java programmers to write AJAX applications in Java. The GWT compiler converts your Java classes to browser-compliant JavaScript and HTML.

Kabuki AJAX Toolkit -- Zimbra, known for its Rich Internet Applications (RIA) has made its AJAX toolkit available for use in your own web apps.

Yahoo! User Interface Library -- 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 YUI Library also includes several core CSS resources.

Dojo -- an open source JavaScript toolkit for constructing dynamic interfaces.

Rialto Rich Internet Application Toolkit -- a library of cross-browser JavaScript widgets that can be encapsulated in JSP, JSF, Net Python or PHP graphic components.

RICO -- open source AJAX engine

Sajax -- another open source JavaScript toolkit that makes it easy to integrate server-side  PHP, Perl or Python functions.

Tutorials

Once you've installed an AJAX framework it's time to start coding. Here are a few starting points for you.

Beginner Tutorials:

Ajax: A New Approach to Web Applications -- an introductory look at AJAX from the person who coined the name.

AJAX for n00bs -- even absolute beginners can learn AJAX with this tutorial that looks at AJAX for what it really is, an evolution of the client-server JavaScript you already know.

AJAX Getting Started -- Mozilla Developer's center's intro to AJAX.

AJAX Made Easy -- build a calculator in AJAX.

AJAX Tutorial -- with get, post, text and XML examples.

Cross-Browser AJAX -- while AJAX will run in any browser, there are differences in implementation that you need to be aware of.

Instant Tutorial -- Get up-to-speed quickly with this beginner's tutorial

Asyncronous Requests with JavaScript and AJAX -- This IBM tutorial begins with the most fundamental and basic of all AJAX-related objects and programming approaches: The XMLHttpRequest object.

Rasmus 30-Second AJAX Tutorial -- Short on time? Try this.

Advanced Tutorials:

ASP .NET Video Library -- If you are using the ASP.NET AJAX framework, you'll want to return frequently to Microsoft's exhaustive selection of videos, tutorials, and documentation aimed at all technical levels to help you learn ASP.NET 2.0 and Visual Web Developer.

Alternate AJAX Techniques (Part I) -- XMLHttp isn't the only way to achieve asynchronous client-server communication.

Guide to Using XMLHttpRequest -- Learn to use XMLHttpRequest with PHP and MySQL.

Drag & Drop Sortable Lists -- Lists can go a long way toward making a web app feel like a real app, and this tutorial demonstrates the right way to implement them.

AJAX File Uploader -- How to build an AJAX-powered component that can upload a file to a server and monitor the progress of a file upload request in real time.

Building a Drag and Drop Shopping Cart with AJAX -- Unsurprisingly some of the first sites to gain Web 2.0 functionality were ecommerce sites. This article shows how to create an interactive shopping experience that allows items to be added to a shopping basket using drag and drop.

AJAX Tutorial with Prototype -- This article shows how to build a zip code verifier.

AJAX for Java Developers: Google Web Toolkit -- Independent software developer, Philip McCarthy, provides a hands-on appoach to creating dynamic web applications entirely in Java (with source code).

Books:

AJAX and PHP by Cristian Darie, Bogdan Brinzarea, Filip Cherecheskü-Tosküa, and Mihai Bucica.

AJAX Design Patterns by Michael Mahemoff.

Getting Started with AJAX by Aaron Gustafson (Note: Article is published in O'Reilly Media's Web Design in a Nutshell).

Head Rush AJAX by O'Reilly Media.

Mastering AJAX by Brett McLaughlin of O'Reilly Media.