public
Description: An implementation of a small (but still very useful!) subset of ESI for Rack
Homepage:
Clone URL: git://github.com/Qerub/rack-esi.git
name age message
file COPYING.txt Thu Dec 11 14:48:26 -0800 2008 First commit! [Qerub]
file README.markdown Thu Oct 22 03:30:30 -0700 2009 Fix typo in README. Thanks, stonean. [Qerub]
file Rakefile Sat Jan 03 20:34:06 -0800 2009 Added Rake task for running the tests [Qerub]
directory examples/ Sat Feb 21 18:40:37 -0800 2009 Updated BasicExampleApplication [Qerub]
directory lib/ Sat Feb 21 18:26:48 -0800 2009 Add Content-Length to processed responses [Qerub]
directory test/ Sat Feb 21 18:26:48 -0800 2009 Add Content-Length to processed responses [Qerub]
README.markdown

TODO: Improve this text.

Rack::ESI

Rack::ESI is an implementation of a small (but still very useful!) subset of ESI.

It allows you to easily cache everything but the user-customized parts of your dynamic pages without leaving the comfortable world of Ruby when used together with Ryan Tomayko's Rack::Cache.

Development of Rack::ESI has just begun and it is not yet ready for anything but exploration.

Currently Supported Expressions

  • <esi:include src="..."/> where src is a relative URL to be handled by the Rack application.
  • <esi:remove>...</esi:remove>
  • <esi:comment text="..."/>

Examples

rackup examples/basic_example_application.ru

With Rack::Cache:

rackup examples/basic_example_application_with_caching.ru

TODOs and FIXMEs

rake tasks        # Show TODOs and FIXMEs
rake tasks:fixme  # Show FIXMEs
rake tasks:todo   # Show TODOs