Mason is a tool for building, serving and managing large web sites. Its features make it an ideal backend for high load sites serving dynamic content, such as online newspapers or database driven e-commerce sites. Mason's various pieces revolve around the notion of "components''. A component is a mix of HTML, Perl, and special Mason commands, one component per file. So-called "top-level" components represent entire web-pages, while smaller components typically return HTML snippets for embedding in top-level components. This object-like architecture greatly simplifies site maintenance: change a shared component, and you instantly changed all dependant pages that refer to it across a site (or across many virtual sites). Mason's component syntax lets designers separate a web page into programmatic and design elements. This means the esoteric Perl bits can be hidden near the bottom of a component, preloading simple variables for use above in the HTML. In our own experience, this frees content managers (i.e., non-programmers) to work on the layout without getting mired in programming details. Techies, however, still enjoy the full power of Perl. Other Mason features include: * Caching Mason caches components after compilation, and offers an internal, shared, expireable data cache for use by components themselves. * Debugging Mason includes a debugging mode whereby HTTP requests can be captured to "debug files" for later replay inside Perl's command-line debugger (as opposed to the non-interactive mod_perl interpreter). * Templating The autohandler and dhandler features make it easy to apply a common header, footer, or filtering function to an entire directory or hierarchy of pages. * Previewer Mason includes a powerful previewing utility which acts as a proxy between Mason and incoming requests. Using a web interface, users create "port profiles" that massage requests in all kinds of interesting ways: different browsers may be simulated, different request ports, different times of day, etc. * Standalone Use Mason is optimized for use with mod_perl, but can also be used from CGI or as a standalone tool to generate other types of dynamic text files (similar to Text::Template, ePerl, etc.). To learn more about this option see the STANDALONE MODE section in HTML::Mason::Interp. WWW: http://www.masonhq.com
State Changed From-To: open->closed Committed, thanks!