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 |
8 | available to extend the runtime functionality of Catalyst. The plugins |
9 | are not distributed with Catalyst but should be available from CPAN. |
c42f5bbf |
10 | They typically require additional modules from CPAN. We will try to |
11 | keep this document up to date, but please check CPAN directly for |
12 | the latest and greatest. |
83b9e3a9 |
13 | |
14 | =head1 PLUGINS |
15 | |
16 | =head2 Catalyst::Plugin::Authentication::CDBI |
17 | |
35e6ab34 |
18 | L<Catalyst::Plugin::Authentication::CDBI> is a CDBI (C<Class::DBI>) |
19 | authentication plugin. Note that it requires a session plugin. |
83b9e3a9 |
20 | |
c42f5bbf |
21 | =head2 Catalyst::Plugin::Authentication::LDAP |
22 | |
23 | L<Catalyst::Plugin::Authentication::LDAP> is a plugin allowing you |
24 | to authenticate your web users using an LDAP server. |
25 | |
83b9e3a9 |
26 | =head2 Catalyst::Plugin::Email |
27 | |
35e6ab34 |
28 | L<Catalyst::Plugin::Email> sends email with Catalyst and L<Email::Send> |
29 | and L<Email::MIME::Creator>. |
83b9e3a9 |
30 | |
c42f5bbf |
31 | =head2 Catalyst::Plugin::Browser |
32 | |
33 | L<Catalyst::Plugin::Browser> extends L<Catalyst::Request> by adding the |
34 | capability of browser detection. It returns an instance of |
35 | L<HTTP::BrowserDetect>, which lets you get information from the client's |
36 | user agent. |
37 | |
38 | =head2 Catalyst::Plugin::Compress::Zlib |
39 | |
40 | L<Catalyst::Plugin::Compress::Zlib> supplies Zlib compression for |
41 | Catalyst. |
42 | |
43 | =head2 Catalyst::Plugin::Compress::Bzip2 |
44 | |
45 | L<Catalyst::Plugin::Compress::Bzip2> compresses a response using |
46 | bzip compression. |
47 | |
83b9e3a9 |
48 | =head2 Catalyst::Plugin::FillInForm |
49 | |
35e6ab34 |
50 | L<Catalyst::Plugin::FillInForm> is plugin for Catalyst based on |
51 | C<HTML::FillInForm>, which describes itself as a module to automatically |
52 | insert data from a previous HTML form into the HTML input, textarea, |
53 | radio buttons, checkboxes, and select tags. C<HTML::FillInForm> is a |
54 | subclass of C<HTML::Parser> and uses it to parse the HTML and insert the |
55 | values into the form tags. |
83b9e3a9 |
56 | |
57 | =head2 Catalyst::Plugin::FormValidator |
58 | |
35e6ab34 |
59 | L<Catalyst::Plugin::FormValidator> is a form validator plugin that uses |
60 | L<Data::FormValidator> to validate and set up form data from your |
61 | request parameters. It's a quite thin wrapper around that module, so |
62 | most of the relevant information can be found there. |
83b9e3a9 |
63 | |
c42f5bbf |
64 | =head2 Catalyst::Plugin::Geography |
65 | |
66 | L<Catalyst::Plugin::Geography> allows you to retrieve various kinds |
67 | of geographical information. You can retrieve the country or code from |
68 | the current user, from a given IP address, or from a given hostname. |
83b9e3a9 |
69 | |
70 | =head2 Catalyst::Plugin::I18N |
71 | |
35e6ab34 |
72 | L<Catalyst::Plugin::I18N> is an internationalization plugin for |
73 | Catalyst. Supports C<mo>/C<po> files and Maketext classes under your |
74 | application's I18N namespace. |
83b9e3a9 |
75 | |
62d40b4c |
76 | =head2 Catalyst::Plugin::Observe |
77 | |
78 | L<Catalyst::Plugin::Observe> provides the ability to register AOP-like |
79 | callbacks to specific Engine events. Subclasses L<Class::Publisher>. |
80 | |
83b9e3a9 |
81 | =head2 Catalyst::Plugin::Pluggable |
82 | |
35e6ab34 |
83 | L<Catalyst::Plugin::Pluggable> is a plugin for pluggable Catalyst |
84 | applications. |
83b9e3a9 |
85 | |
86 | =head2 Catalyst::Plugin::Prototype |
87 | |
35e6ab34 |
88 | L<Catalyst::Plugin::Prototype> is a plugin for the Prototype JavaScript |
89 | library. This Plugin allows you to easily implement AJAX functionality |
90 | without actually knowing Javascript. |
83b9e3a9 |
91 | |
92 | =head2 Catalyst::Plugin::Session::FastMmap |
93 | |
35e6ab34 |
94 | L<Catalyst::Plugin::Session::FastMmap> is a session plugin for Catalyst |
95 | based on C<Cache::FastMMap>, which uses an mmap'ed file to act as a |
96 | shared memory interprocess cache. |
83b9e3a9 |
97 | |
98 | |
99 | =head2 Catalyst::Plugin::Static |
100 | |
35e6ab34 |
101 | L<Catalyst::Plugin::Static> is a plugin to serve static files from C<< |
102 | $c->config->{root} >>/<< action >>/. |
83b9e3a9 |
103 | |
104 | |
665dadd4 |
105 | =head2 Catalyst::Plugin::SubRequest |
106 | |
35e6ab34 |
107 | L<Catalyst::Plugin::SubRequest> is a plugin to allow subrequests to |
108 | actions to be made within Catalyst. Nice for portal software and such. |
665dadd4 |
109 | |
83b9e3a9 |
110 | =head2 Catalyst::Plugin::Textile |
111 | |
35e6ab34 |
112 | L<Catalyst::Plugin::Textile> is a persistent Textile processor for |
113 | Catalyst that uses C<Text::Textile>, a Perl-based implementation of Dean |
114 | Allen's Textile syntax. Textile is shorthand for doing common formatting |
115 | tasks (see L<http://textism.com>). |
83b9e3a9 |
116 | |
c42f5bbf |
117 | =head2 Catalyst::Plugin::Unicode |
118 | |
119 | L<Catalyst::Plugin::Unicode> provides a Unicode-aware Catalyst. On |
120 | request, it decodes all params from UTF-8 octets into a sequence of |
121 | logical characters. On response, it encodes the body into UTF-8 octets. |
83b9e3a9 |
122 | |
123 | =head2 Catalyst::Plugin::XMLRPC |
124 | |
35e6ab34 |
125 | L<Catalyst::Plugin::XMLRPC> plugin allows your Controller class to |
126 | dispatch XMLRPC methods from its own class. |
83b9e3a9 |
127 | |
128 | |
129 | =head1 COMPONENT MODULES |
130 | |
131 | =head2 Catalyst::Model::CDBI |
132 | |
35e6ab34 |
133 | L<Catalyst::Model::CDBI> is the C<Class::DBI> (CDBI) module class. It |
4911f47a |
134 | is built on top of C<Class::DBI::Loader>, which automates the |
135 | definition of C<Class::DBI> sub-classes by scanning the underlying |
136 | table schemas, setting up columns and primary keys. |
83b9e3a9 |
137 | |
386777dc |
138 | =head2 Catalyst::Model::CDBI::Plain |
139 | |
140 | L<Catalyst::Model::CDBI::Plain> is a neutral interface to the |
141 | C<Class::DBI> module, which does not attempt to automate table |
142 | setup. It allows the user to manually set up C<Class::DBI> |
143 | classes, either by doing so within the Catalyst model classes |
144 | themselves, or by inheriting from existing C<Class::DBI> |
145 | classes. |
146 | |
83b9e3a9 |
147 | =head2 Catalyst::Model::CDBI::CRUD |
148 | |
35e6ab34 |
149 | L<Catalyst::Model::CDBI::CRUD> is a subclass of |
c42f5bbf |
150 | C<Catalyst::Model::CDBI> with additional CRUD (create, retrieve, |
abea2aaa |
151 | update, delete) methods. |
83b9e3a9 |
152 | |
c42f5bbf |
153 | =head2 Catalyst::Model::Plucene |
154 | L<Catalyst::Model::Plucene> is the model class for the Plucene |
155 | search engine. |
83b9e3a9 |
156 | |
c42f5bbf |
157 | =head2 Catalyst::View::HTML::Template |
83b9e3a9 |
158 | |
c42f5bbf |
159 | L<Catalyst::View::HTML::Template> is a View component for |
160 | displaying your stash with L<HTML::Template>. |
161 | |
162 | =head2 Catalyst::View::PSP |
163 | |
164 | L<Catalyst::View::PSP> is a View component for displaying your |
165 | stash using PSP, a Perl extension implementing a JSP-like |
166 | templating system; see L<Text::PSP>. |
167 | |
168 | =head2 Catalyst::View::Petal |
169 | L<Catalyst::View::Petal> is a View component for displaying |
170 | your stash using Petal, the Perl Template Attribute Language, |
171 | an XML-based templating system; see L<Petal>. |
83b9e3a9 |
172 | |
abea2aaa |
173 | =head2 Catalyst::View::Mason |
174 | |
c42f5bbf |
175 | L<Catalyst::View::Mason> is a View component for displaying your stash |
176 | with L<HTML::Mason>. |
177 | |
178 | =head2 Catalyst::View::TT |
179 | |
180 | L<Catalyst::View::TT> is a Template Toolkit view. See |
181 | L<Template::Manual>. |
83b9e3a9 |
182 | |
183 | =head1 AUTHOR |
184 | |
185 | Andrew Ford E<lt>A.Ford@ford-mason.co.ukE<gt> |
4911f47a |
186 | Marcus Ramberg E<lt>mramberg@cpan.orgE<gt> |
c42f5bbf |
187 | Jesse Sheidlower E<lt>jester@panix.comE<gt> |
83b9e3a9 |
188 | |
189 | =head1 COPYRIGHT |
190 | |
191 | This program is free software, you can redistribute it and/or modify it under |
192 | the same terms as Perl itself. |