16 'force|nonew' => \$force,
17 'makefile' => \$makefile,
18 'scripts' => \$scripts,
22 pod2usage(1) if ( $help || !$ARGV[0] );
24 my $helper = Catalyst::Helper->new( {
25 '.newfiles' => !$force,
26 'makefile' => $makefile,
27 'scripts' => $scripts,
30 pod2usage(1) unless $helper->mk_app( $ARGV[0] );
37 catalyst - Bootstrap a Catalyst application
41 catalyst.pl [options] application-name
44 -force don't create a .new file where a file to be created exists
45 -help display this help and exits
46 -makefile update Makefile.PL only
47 -scripts update helper scripts only
48 -short use short types, like C instead of Controller...
50 application-name must be a valid Perl module name and can include "::"
56 To upgrade your app to a new version of Catalyst:
57 catalyst.pl -force -scripts MyApp
62 The C<catalyst.pl> script bootstraps a Catalyst application, creating a
63 directory structure populated with skeleton files.
65 The application name must be a valid Perl module name. The name of the
66 directory created is formed from the application name supplied, with double
67 colons replaced with hyphens (so, for example, the directory for C<My::App> is
70 Using the example application name C<My::App>, the application directory will
71 contain the following items:
77 a skeleton README file, which you are encouraged to expand on
81 a changes file with an initial entry for the creation of the application
85 Makefile.PL uses the C<Module::Install> system for packaging and distribution
90 contains the application module (C<My/App.pm>) and
91 subdirectories for model, view, and controller components (C<My/App/M>,
92 C<My/App/V>, and C<My/App/C>).
96 root directory for your web document content. This is left empty.
100 a directory containing helper scripts:
104 =item C<myapp_create.pl>
106 helper script to generate new component modules
108 =item C<myapp_server.pl>
110 runs the generated application within a Catalyst test server, which can be
111 used for testing without resorting to a full-blown web server configuration.
113 =item C<myapp_cgi.pl>
115 runs the generated application as a CGI script
117 =item C<myapp_fastcgi.pl>
119 runs the generated application as a FastCGI script
121 =item C<myapp_test.pl>
123 runs an action of the generated application from the comand line.
134 The application module generated by the C<catalyst.pl> script is functional,
135 although it reacts to all requests by outputting a friendly welcome screen.
140 Neither C<catalyst.pl> nor the generated helper script will overwrite existing
141 files. In fact the scripts will generate new versions of any existing files,
142 adding the extension C<.new> to the filename. The C<.new> file is not created
143 if would be identical to the existing file.
145 This means you can re-run the scripts for example to see if newer versions of
146 Catalyst or its plugins generate different code, or to see how you may have
147 changed the generated code (although you do of course have all your code in a
148 version control system anyway, don't you ...).
154 L<Catalyst::Manual>, L<Catalyst::Manual::Intro>
158 Sebastian Riedel, C<sri@oook.de>,
159 Andrew Ford, C<A.Ford@ford-mason.co.uk>
164 Copyright 2004-2005 Sebastian Riedel. All rights reserved.
166 This library is free software, you can redistribute it and/or modify it under
167 the same terms as Perl itself.