Commit | Line | Data |
83b9e3a9 |
1 | =head1 NAME |
2 | |
3 | Catalyst::Manual::Plugins - Catalyst Plugins (and Components) |
4 | |
5 | =head1 DESCRIPTION |
6 | |
35e6ab34 |
7 | This section lists the some of the plugins and components that are |
24d0c6d2 |
8 | available to extend the runtime functionality of Catalyst. Most plugins |
35e6ab34 |
9 | are not distributed with Catalyst but should be available from CPAN. |
24d0c6d2 |
10 | They typically require additional modules from CPAN. |
4427ee06 |
11 | |
b89fe2dd |
12 | This list is almost certainly outdated by the time you read this and some |
13 | plugins may even be deprecated or now part of core L<Catalyst>. Be sure |
14 | to check the Catalyst::Plugin namespace for additional plugins and consult |
15 | the mailing list ( L<http://dev.catalyst.perl.org/wiki/Support> ) for advice |
16 | on the current status or preferred use of your chosen plugin/framework. |
83b9e3a9 |
17 | |
18 | =head1 PLUGINS |
19 | |
b89fe2dd |
20 | =head2 Catalyst::Plugin::Account::AutoDiscovery |
21 | |
b248fa4a |
22 | L<Catalyst::Plugin::Account::AutoDiscovery> provides Account Auto-Discovery |
b89fe2dd |
23 | for Catalyst. |
24 | |
25 | =head2 Catalyst::Plugin::Acme::Scramble |
26 | |
27 | L<Catalyst::Plugin::Acme::Scramble> Implements a potent meme about how easily |
28 | we can read scrambled text if the first and last letters remain constant. |
29 | Operates on text/plain and text/html served by your Catalyst application. |
30 | |
31 | =head2 Catalyst::Plugin::AtomPP |
32 | |
33 | L<Catalyst::Plugin::AtomPP> allows you to dispatch AtomPP methods. |
34 | |
35 | =head2 Catalyst::Plugin::AtomServer |
36 | |
37 | L<Catalyst::Plugin::AtomServer> is a plugin that implements the necessary |
38 | bits to make it easy to build an Atom API server for any Catalyst-based |
39 | application. |
40 | |
41 | =head2 Catalyst::Plugin::Authentication |
42 | |
43 | L<Catalyst::Plugin::Authentication> is a infrastructure plugin for the |
44 | Catalyst authentication framework. Now the recommended way to do any form |
45 | of Authentication. |
46 | |
47 | =head2 Catalyst::Plugin::Authentication::Basic::Remote |
48 | |
49 | L<Catalyst::Plugin::Authentication::Basic::Remote> is a authentication plugin |
50 | that allows you to use a remote host's Basic authentication. |
51 | |
83b9e3a9 |
52 | =head2 Catalyst::Plugin::Authentication::CDBI |
53 | |
35e6ab34 |
54 | L<Catalyst::Plugin::Authentication::CDBI> is a CDBI (C<Class::DBI>) |
55 | authentication plugin. Note that it requires a session plugin. |
83b9e3a9 |
56 | |
b89fe2dd |
57 | =head2 Catalyst::Plugin::Authentication::CDBI::Basic |
58 | |
59 | L<Catalyst::Plugin::Authentication::CDBI::Basic> provides Basic Authorization |
60 | for Catalyst. |
61 | Replaced by L<Catalyst::Plugin::Authentication::Credential::HTTP> |
62 | |
63 | =head2 Catalyst::Plugin::Authentication::Credential::Atom |
64 | |
65 | L<Catalyst::Plugin::Authentication::Credential::Atom> is a plugin which |
66 | implements WSSE and Basic authentication for Catalyst applications using |
b248fa4a |
67 | L<Catalyst::Plugin::AtomServer> |
b89fe2dd |
68 | |
69 | =head2 Catalyst::Plugin::Authentication::Credential::Flickr |
70 | |
71 | L<Catalyst::Plugin::Authentication::Credential::Flickr> is a plugin which |
72 | provides authentication via Flickr, using it's API |
73 | |
74 | =head2 Catalyst::Plugin::Authentication::Credential::HTTP |
75 | |
76 | L<Catalyst::Plugin::Authentication::Credential::HTTP> is a plugin that |
77 | lets you do HTTP Basic authentication for Catalyst. |
78 | |
79 | =head2 Catalyst::Plugin::Authentication::Credential::Password |
80 | |
81 | L<Catalyst::Plugin::Authentication::Credential::Password> takes a username |
82 | (or userid) and a password, and tries various methods of comparing a |
83 | password based on what the chosen store's user objects support. |
84 | Part of the Authentication Framework <Catalyst::Plugin::Authentication> |
85 | |
86 | |
87 | =head2 Catalyst::Plugin::Authentication::Credential::TypeKey |
88 | |
89 | L<Catalyst::Plugin::Authentication::Credential::TypeKey> integrates |
90 | L<Authen::TypeKey> with L<Catalyst::Plugin::Authentication> |
91 | |
c42f5bbf |
92 | =head2 Catalyst::Plugin::Authentication::LDAP |
93 | |
94 | L<Catalyst::Plugin::Authentication::LDAP> is a plugin allowing you |
a43b7864 |
95 | to authenticate your web users using an LDAP server. Replaced |
b89fe2dd |
96 | by L<Catalyst::Plugin::Authentication::Store::LDAP> |
97 | |
98 | =head2 Catalyst::Plugin::Authentication::OpenID |
99 | |
100 | L<Catalyst::Plugin::Authentication::OpenID> is a plugin that implements |
101 | support for OpenID authentication. For more information on OpenID, take |
102 | a look at L<http://www.openid.net/>. |
103 | |
104 | =head2 Catalyst::Plugin::Authentication::Simple |
105 | |
b248fa4a |
106 | Replaced by new L<Catalyst::Plugin::Authentication> framework |
b89fe2dd |
107 | |
108 | =head2 Catalyst::Plugin::Authentication::Store |
109 | |
110 | L<Catalyst::Plugin::Authentication::Store> is the core store documentation |
111 | |
112 | =head2 Catalyst::Plugin::Authentication::Store::DBIC |
113 | |
114 | L<Catalyst::Plugin::Authentication::Store::DBIC> is a plugin that lets |
115 | you do authentication and authorization against a DBIx::Class or |
116 | Class::DBI model. |
117 | |
118 | =head2 Catalyst::Plugin::Authentication::Store::Htpasswd |
119 | |
120 | L<Catalyst::Plugin::Authentication::Store::Htpasswd> uses L<Authen::Htpasswd> |
121 | to let your application use C<.htpasswd> files for it's |
122 | authentication storage. |
123 | |
a43b7864 |
124 | =head2 Catalyst::Plugin::Authentication::Store::LDAP |
125 | |
126 | L<Catalyst::Plugin::Authentication::Store::LDAP> the new LDAP store. Use this |
127 | instead of L<Catalyst::Plugin::Authentication::LDAP> |
128 | |
b89fe2dd |
129 | =head2 Catalyst::Plugin::Authentication::Store::Minimal |
130 | |
131 | L<Catalyst::Plugin::Authentication::Store::Minimal> lets you create a very |
132 | quick and dirty user database in your application's config hash. |
133 | Great for getting up and running quickly. |
134 | |
135 | =head2 Catalyst::Plugin::Authentication::User::Hash |
136 | |
137 | L<Catalyst::Plugin::Authentication::User::Hash> is an easy authentication |
138 | user object based on hashes. |
139 | See L<Catalyst::Plugin::Authentication::Store::Minimal> for more info. |
140 | |
141 | =head2 Catalyst::Plugin::Authorization::ACL |
142 | |
a43b7864 |
143 | L<Catalyst::Plugin::Authorization::ACL> This module provides Access Control |
144 | List style path protection, with arbitrary rules for L<Catalyst> applications. |
145 | It operates only on the Catalyst private namespace, at least at the moment. |
b89fe2dd |
146 | |
147 | =head2 Catalyst::Plugin::Authorization::CDBI::GroupToken |
148 | |
a43b7864 |
149 | No longer on the CPAN |
b89fe2dd |
150 | |
151 | =head2 Catalyst::Plugin::Authorization::Roles |
152 | |
153 | L<Catalyst::Plugin::Authorization::Roles> provides role based authorization |
154 | for Catalyst based on L<Catalyst::Plugin::Authentication>. |
c42f5bbf |
155 | |
c42f5bbf |
156 | =head2 Catalyst::Plugin::Browser |
157 | |
158 | L<Catalyst::Plugin::Browser> extends L<Catalyst::Request> by adding the |
159 | capability of browser detection. It returns an instance of |
160 | L<HTTP::BrowserDetect>, which lets you get information from the client's |
161 | user agent. |
162 | |
4427ee06 |
163 | =head2 Catalyst::Plugin::Cache::FastMmap, FileCache, and Memcached |
164 | |
24d0c6d2 |
165 | L<Catalyst::Plugin::Cache::FastMmap>, |
166 | L<Catalyst::Plugin::Cache::FileCache>, and |
167 | L<Catalyst::Plugin::Cache::Memcached> all provide a cache method |
168 | enabling easy access to a shared cache. |
4427ee06 |
169 | |
b89fe2dd |
170 | =head2 Catalyst::Plugin::CDBI::Transaction |
171 | |
172 | |
173 | =head2 Catalyst::Plugin::Charsets::Japanese |
c42f5bbf |
174 | |
c42f5bbf |
175 | |
176 | =head2 Catalyst::Plugin::Compress::Bzip2 |
177 | |
178 | L<Catalyst::Plugin::Compress::Bzip2> compresses a response using |
179 | bzip compression. |
180 | |
b89fe2dd |
181 | =head2 Catalyst::Plugin::Compress::Deflate |
182 | |
183 | |
184 | =head2 Catalyst::Plugin::Compress::Gzip |
185 | |
186 | |
187 | =head2 Catalyst::Plugin::Compress::Zlib |
188 | |
189 | L<Catalyst::Plugin::Compress::Zlib> supplies Zlib compression for |
190 | Catalyst. |
191 | |
192 | =head2 Catalyst::Plugin::Config::JSON |
193 | |
194 | |
195 | =head2 Catalyst::Plugin::ConfigLoader |
196 | |
197 | |
198 | =head2 Catalyst::Plugin::ConfigLoader::INI |
199 | |
200 | |
201 | =head2 Catalyst::Plugin::ConfigLoader::JSON |
202 | |
203 | |
204 | =head2 Catalyst::Plugin::ConfigLoader::Perl |
205 | |
206 | |
207 | =head2 Catalyst::Plugin::ConfigLoader::XML |
208 | |
209 | |
210 | =head2 Catalyst::Plugin::ConfigLoader::YAML |
211 | |
212 | |
213 | =head2 Catalyst::Plugin::Config::YAML |
214 | |
215 | |
216 | =head2 Catalyst::Plugin::DateTime |
217 | |
218 | |
4427ee06 |
219 | =head2 Catalyst::Plugin::DefaultEnd |
220 | |
24d0c6d2 |
221 | L<Catalyst::Plugin::DefaultEnd> creates a sane, standard end method for |
222 | your application. |
4427ee06 |
223 | |
b89fe2dd |
224 | =head2 Catalyst::Plugin::Devel::InPageLogs |
225 | |
226 | |
227 | =head2 Catalyst::Plugin::Devel::InPageLogs::Log |
228 | |
229 | |
230 | =head2 Catalyst::Plugin::Dumper |
231 | |
232 | |
4427ee06 |
233 | =head2 Catalyst::Plugin::Email |
234 | |
235 | L<Catalyst::Plugin::Email> sends email with Catalyst and L<Email::Send> |
236 | and L<Email::MIME::Creator>. |
237 | |
b89fe2dd |
238 | =head2 Catalyst::Plugin::Email::Japanese |
239 | |
240 | |
241 | =head2 Catalyst::Plugin::Email::Page |
242 | |
243 | |
244 | =head2 Catalyst::Plugin::EmailValid |
245 | |
246 | |
83b9e3a9 |
247 | =head2 Catalyst::Plugin::FillInForm |
248 | |
35e6ab34 |
249 | L<Catalyst::Plugin::FillInForm> is plugin for Catalyst based on |
250 | C<HTML::FillInForm>, which describes itself as a module to automatically |
251 | insert data from a previous HTML form into the HTML input, textarea, |
252 | radio buttons, checkboxes, and select tags. C<HTML::FillInForm> is a |
253 | subclass of C<HTML::Parser> and uses it to parse the HTML and insert the |
254 | values into the form tags. |
83b9e3a9 |
255 | |
b89fe2dd |
256 | =head2 Catalyst::Plugin::Flavour |
257 | |
258 | |
83b9e3a9 |
259 | =head2 Catalyst::Plugin::FormValidator |
260 | |
35e6ab34 |
261 | L<Catalyst::Plugin::FormValidator> is a form validator plugin that uses |
262 | L<Data::FormValidator> to validate and set up form data from your |
24d0c6d2 |
263 | request parameters. It's a quite thin wrapper around that module, so |
35e6ab34 |
264 | most of the relevant information can be found there. |
83b9e3a9 |
265 | |
b89fe2dd |
266 | =head2 Catalyst::Plugin::FormValidator::Simple |
267 | |
268 | |
c42f5bbf |
269 | =head2 Catalyst::Plugin::Geography |
270 | |
271 | L<Catalyst::Plugin::Geography> allows you to retrieve various kinds |
272 | of geographical information. You can retrieve the country or code from |
273 | the current user, from a given IP address, or from a given hostname. |
83b9e3a9 |
274 | |
b89fe2dd |
275 | =head2 Catalyst::Plugin::Geography::Implementation |
276 | |
277 | |
278 | =head2 Catalyst::Plugin::HashedCookies |
279 | |
280 | |
281 | =head2 Catalyst::Plugin::HTML::Scrubber |
282 | |
283 | |
284 | =head2 Catalyst::Plugin::HTML::Widget |
285 | |
286 | |
83b9e3a9 |
287 | =head2 Catalyst::Plugin::I18N |
288 | |
35e6ab34 |
289 | L<Catalyst::Plugin::I18N> is an internationalization plugin for |
290 | Catalyst. Supports C<mo>/C<po> files and Maketext classes under your |
291 | application's I18N namespace. |
83b9e3a9 |
292 | |
b89fe2dd |
293 | =head2 Catalyst::Plugin::JSONRPC |
294 | |
295 | |
296 | =head2 Catalyst::Plugin::Message |
297 | |
298 | |
299 | =head2 Catalyst::Plugin::MobileAgent |
300 | |
301 | |
62d40b4c |
302 | =head2 Catalyst::Plugin::Observe |
303 | |
304 | L<Catalyst::Plugin::Observe> provides the ability to register AOP-like |
305 | callbacks to specific Engine events. Subclasses L<Class::Publisher>. |
306 | |
4427ee06 |
307 | =head2 Catalyst::Plugin::OrderedParams |
308 | |
309 | L<Catalyst::Plugin::OrderedParams> adjusts the way that parameters operate, |
310 | causing them to appear in the same order they were submitted by the browser. |
311 | This can be useful for creating things such as email forms. |
312 | |
c74caf1d |
313 | =head2 Catalyst::Plugin::PageCache |
314 | |
315 | L<Catalyst::Plugin::PageCache> helps improve the performance of slow or |
316 | frequently accessed pages by caching the entire output of your page. |
317 | Subsequent requests to the page will receive the page very quickly from |
4427ee06 |
318 | cache. |
c74caf1d |
319 | |
b89fe2dd |
320 | =head2 Catalyst::Plugin::Params::Nested |
321 | |
322 | |
323 | =head2 Catalyst::Plugin::Params::Nested::Expander |
324 | |
325 | |
83b9e3a9 |
326 | =head2 Catalyst::Plugin::Pluggable |
327 | |
35e6ab34 |
328 | L<Catalyst::Plugin::Pluggable> is a plugin for pluggable Catalyst |
329 | applications. |
83b9e3a9 |
330 | |
331 | =head2 Catalyst::Plugin::Prototype |
332 | |
35e6ab34 |
333 | L<Catalyst::Plugin::Prototype> is a plugin for the Prototype JavaScript |
334 | library. This Plugin allows you to easily implement AJAX functionality |
335 | without actually knowing Javascript. |
83b9e3a9 |
336 | |
b89fe2dd |
337 | =head2 Catalyst::Plugin::Redirect |
338 | |
339 | |
340 | =head2 Catalyst::Plugin::RequestToken |
341 | |
342 | |
c74caf1d |
343 | =head2 Catalyst::Plugin::RequireSSL |
344 | |
345 | Use L<Catalyst::Plugin::RequireSSL> if you would like to force visitors |
346 | to access certain pages using only SSL mode. An attempt to access the |
347 | page in non-SSL mode will receive a redirect into SSL mode. Useful for |
24d0c6d2 |
348 | login pages, shopping carts, user registration forms, and other |
349 | sensitive data. |
c74caf1d |
350 | |
b89fe2dd |
351 | =head2 Catalyst::Plugin::SanitizeUrl |
352 | |
353 | |
354 | =head2 Catalyst::Plugin::SanitizeUrl::PrepAction |
355 | |
356 | |
357 | =head2 Catalyst::Plugin::Scheduler |
358 | |
359 | |
4427ee06 |
360 | =head2 Catalyst::Plugin::Session |
361 | |
362 | The L<Catalyst::Plugin::Session> series of modules provide an easy way to |
24d0c6d2 |
363 | include session handling in an application. You can choose from several |
4427ee06 |
364 | different backend storage methods and combine that with your choice of |
365 | client-side storage methods. |
366 | |
b89fe2dd |
367 | =head2 Catalyst::Plugin::Session::CGISession |
368 | |
369 | |
83b9e3a9 |
370 | =head2 Catalyst::Plugin::Session::FastMmap |
371 | |
35e6ab34 |
372 | L<Catalyst::Plugin::Session::FastMmap> is a session plugin for Catalyst |
373 | based on C<Cache::FastMMap>, which uses an mmap'ed file to act as a |
24d0c6d2 |
374 | shared memory interprocess cache. This is an older session plugin; you may |
4427ee06 |
375 | wish to look at L<Catalyst::Plugin::Session> instead. |
83b9e3a9 |
376 | |
b89fe2dd |
377 | =head2 Catalyst::Plugin::Session::Flex |
378 | |
379 | |
380 | =head2 Catalyst::Plugin::Session::Manager |
381 | |
382 | |
383 | =head2 Catalyst::Plugin::Session::Manager::Client::Cookie |
384 | |
385 | |
386 | =head2 Catalyst::Plugin::Session::Manager::Client::Rewrite |
387 | |
388 | |
389 | =head2 Catalyst::Plugin::Session::Manager::Client::StickyQuery |
390 | |
391 | |
392 | =head2 Catalyst::Plugin::Session::Manager::Storage::CDBI |
393 | |
394 | |
395 | =head2 Catalyst::Plugin::Session::Manager::Storage::FastMmap |
396 | |
397 | |
398 | =head2 Catalyst::Plugin::Session::Manager::Storage::File |
399 | |
400 | |
401 | =head2 Catalyst::Plugin::Session::PerUser |
402 | |
403 | |
404 | =head2 Catalyst::Plugin::Session::State |
405 | |
406 | |
407 | =head2 Catalyst::Plugin::Session::State::Cookie |
408 | |
409 | |
410 | =head2 Catalyst::Plugin::Session::State::URI |
411 | |
412 | |
413 | =head2 Catalyst::Plugin::Session::Store |
414 | |
415 | |
416 | =head2 Catalyst::Plugin::Session::Store::CDBI |
417 | |
418 | |
419 | =head2 Catalyst::Plugin::Session::Store::DBI |
420 | |
421 | |
422 | =head2 Catalyst::Plugin::Session::Store::Dummy |
423 | |
424 | |
425 | =head2 Catalyst::Plugin::Session::Store::FastMmap |
426 | |
427 | |
428 | =head2 Catalyst::Plugin::Session::Store::File |
429 | |
430 | |
431 | =head2 Catalyst::Plugin::Session::Store::Memcached |
432 | |
433 | |
434 | =head2 Catalyst::Plugin::Session::Test::Store |
435 | |
436 | |
437 | =head2 Catalyst::Plugin::Singleton |
438 | |
439 | |
4427ee06 |
440 | =head2 Catalyst::Plugin::SRU |
441 | |
442 | L<Catalyst::Plugin::SRU> allows your controller class to dispatch SRU |
443 | actions (C<explain>, C<scan>, and C<searchRetrieve>) from its own class. |
e8af4edb |
444 | |
b89fe2dd |
445 | =head2 Catalyst::Plugin::StackTrace |
4427ee06 |
446 | |
83b9e3a9 |
447 | |
448 | =head2 Catalyst::Plugin::Static |
449 | |
c74caf1d |
450 | L<Catalyst::Plugin::Static> is a plugin to serve static files from |
451 | C<$c-E<gt>config-E<gt>{root}>. Intended chiefly for development |
452 | purposes. |
83b9e3a9 |
453 | |
b89fe2dd |
454 | =head2 Catalyst::Plugin::Static::Simple |
455 | |
456 | L<Catalyst::Plugin::Static::Simple> serves static files in your |
457 | application without requiring a single line of code. This plugin is now |
458 | included in the core Catalyst distribution. |
459 | |
665dadd4 |
460 | =head2 Catalyst::Plugin::SubRequest |
461 | |
35e6ab34 |
462 | L<Catalyst::Plugin::SubRequest> is a plugin to allow subrequests to |
24d0c6d2 |
463 | actions to be made within Catalyst. Nice for portal software and such. |
665dadd4 |
464 | |
4427ee06 |
465 | =head2 Catalyst::Plugin::SuperForm |
466 | |
467 | L<Catalyst::Plugin::SuperForm> is an interface to the L<HTML::SuperForm> |
468 | module, enabling easy HTML form creation. |
469 | |
83b9e3a9 |
470 | =head2 Catalyst::Plugin::Textile |
471 | |
35e6ab34 |
472 | L<Catalyst::Plugin::Textile> is a persistent Textile processor for |
473 | Catalyst that uses C<Text::Textile>, a Perl-based implementation of Dean |
474 | Allen's Textile syntax. Textile is shorthand for doing common formatting |
475 | tasks (see L<http://textism.com>). |
83b9e3a9 |
476 | |
c42f5bbf |
477 | =head2 Catalyst::Plugin::Unicode |
478 | |
479 | L<Catalyst::Plugin::Unicode> provides a Unicode-aware Catalyst. On |
480 | request, it decodes all params from UTF-8 octets into a sequence of |
481 | logical characters. On response, it encodes the body into UTF-8 octets. |
83b9e3a9 |
482 | |
b89fe2dd |
483 | =head2 Catalyst::Plugin::Unicode::Encoding |
484 | |
485 | |
486 | =head2 Catalyst::Plugin::Upload::Basename |
487 | |
488 | |
489 | =head2 Catalyst::Plugin::Upload::MD5 |
490 | |
491 | |
492 | =head2 Catalyst::Plugin::Upload::MIME |
493 | |
494 | |
83b9e3a9 |
495 | =head2 Catalyst::Plugin::XMLRPC |
496 | |
35e6ab34 |
497 | L<Catalyst::Plugin::XMLRPC> plugin allows your Controller class to |
498 | dispatch XMLRPC methods from its own class. |
83b9e3a9 |
499 | |
83b9e3a9 |
500 | =head1 COMPONENT MODULES |
501 | |
502 | =head2 Catalyst::Model::CDBI |
503 | |
35e6ab34 |
504 | L<Catalyst::Model::CDBI> is the C<Class::DBI> (CDBI) module class. It |
4911f47a |
505 | is built on top of C<Class::DBI::Loader>, which automates the |
506 | definition of C<Class::DBI> sub-classes by scanning the underlying |
507 | table schemas, setting up columns and primary keys. |
83b9e3a9 |
508 | |
386777dc |
509 | =head2 Catalyst::Model::CDBI::Plain |
510 | |
511 | L<Catalyst::Model::CDBI::Plain> is a neutral interface to the |
512 | C<Class::DBI> module, which does not attempt to automate table |
513 | setup. It allows the user to manually set up C<Class::DBI> |
514 | classes, either by doing so within the Catalyst model classes |
515 | themselves, or by inheriting from existing C<Class::DBI> |
516 | classes. |
517 | |
60fa95ba |
518 | =head2 Catalyst::Model::DBIC::Schema |
83b9e3a9 |
519 | |
60fa95ba |
520 | L<Catalyst::Model::DBIC::Schema> is a L<DBIx::Class> model class that can |
521 | use either an explicit DBIx::Class::Schema or one automatically loaded from |
522 | your database via DBIx::Class::Schema::Loader |
83b9e3a9 |
523 | |
c42f5bbf |
524 | =head2 Catalyst::Model::Plucene |
4427ee06 |
525 | |
24d0c6d2 |
526 | L<Catalyst::Model::Plucene> is a model class for the Plucene search |
527 | engine. |
4427ee06 |
528 | |
529 | =head2 Catalyst::Model::Xapian |
530 | |
24d0c6d2 |
531 | L<Catalyst::Model::Xapian> is a model class for the Xapian search |
532 | engine. |
83b9e3a9 |
533 | |
c42f5bbf |
534 | =head2 Catalyst::View::HTML::Template |
83b9e3a9 |
535 | |
c42f5bbf |
536 | L<Catalyst::View::HTML::Template> is a View component for |
537 | displaying your stash with L<HTML::Template>. |
538 | |
4427ee06 |
539 | =head2 Catalyst::View::Mason |
540 | |
541 | L<Catalyst::View::Mason> is a View component for displaying your stash |
542 | with L<HTML::Mason>. |
543 | |
c42f5bbf |
544 | =head2 Catalyst::View::PSP |
545 | |
24d0c6d2 |
546 | L<Catalyst::View::PSP> is a View component for displaying your stash |
547 | using PSP, a Perl extension implementing a JSP-like templating system; |
548 | see L<Text::PSP>. |
c42f5bbf |
549 | |
550 | =head2 Catalyst::View::Petal |
4427ee06 |
551 | |
c42f5bbf |
552 | L<Catalyst::View::Petal> is a View component for displaying |
553 | your stash using Petal, the Perl Template Attribute Language, |
554 | an XML-based templating system; see L<Petal>. |
83b9e3a9 |
555 | |
c42f5bbf |
556 | =head2 Catalyst::View::TT |
557 | |
4427ee06 |
558 | L<Catalyst::View::TT> is a Template Toolkit view. See L<Template::Manual>. |
83b9e3a9 |
559 | |
4427ee06 |
560 | =head1 AUTHORS |
83b9e3a9 |
561 | |
562 | Andrew Ford E<lt>A.Ford@ford-mason.co.ukE<gt> |
4427ee06 |
563 | |
a43b7864 |
564 | Gavin Henry E<lt>ghenry@suretecsystems.comE<gt> |
4427ee06 |
565 | |
c42f5bbf |
566 | Jesse Sheidlower E<lt>jester@panix.comE<gt> |
83b9e3a9 |
567 | |
b89fe2dd |
568 | Marcus Ramberg E<lt>mramberg@cpan.orgE<gt> |
569 | |
83b9e3a9 |
570 | =head1 COPYRIGHT |
571 | |
572 | This program is free software, you can redistribute it and/or modify it under |
573 | the same terms as Perl itself. |
b89fe2dd |
574 | |
575 | |