Accessibility support in Yeast-Templates

The main drawback of Yeast templates, as any other browser-side templating systems, is that they are not accessible. If the user-agent that is accessing a template does not have JavaScript enabled, the template will not be processed. This is important not only because it limits the access for people with disabilities to Yeast aplications, but also for search engines. These, do not process JavaScript and, therefore,they can not index the contents of the processed templates.

To remedy this problem, we have developed a accessibility module for our Yeast-Server, combined with an smart processing on the client. The engine of Yeast templates include a small script that detects the JavaScript processing capacity in the user-agent. This script tells the server the status of JavaScript on the client. If JavaScript is enabled, templates are processed normally. Otherwise, the templates are processed by the server, using the module that we call Yeipee, so that the response to the request includes only HTML. The script for JavaScript detection is also provided for non-Yeast templates (download it). You can test this facility using this link.

The downside to this accessible processing in the server is the reduction of server throughput (read more).

For a more detailed description about how to configure the Yeast-Server accessibility facilities, read the Yeast-Server manual.