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 Wed Dec 23 15:20:47 -0800 2009 Update COPYING.txt [Qerub]
file README.markdown Thu Dec 24 05:34:00 -0800 2009 Settle that esi:include[@src] must be absolute [Qerub]
file Rakefile Sat Jan 03 20:34:06 -0800 2009 Added Rake task for running the tests [Qerub]
directory examples/ Thu Dec 24 05:36:34 -0800 2009 Beef up example application [Qerub]
directory lib/ Thu Dec 24 05:35:01 -0800 2009 Check the status of @app.call [Qerub]
directory test/ Thu Dec 24 05:35:04 -0800 2009 assert_same_response -> assert_equal_response [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 an absolute path 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