NAME

cgiapp-starter - creates a skeleton CGI::Application project

SYNOPSIS

cgiapp-starter --module=MyApp --author="Andy Lester" --email=andy@petdance.com

Result:

MyApp
MyApp/lib
MyApp/lib/MyApp.pm
MyApp/lib/MyApp/templates/runmode1.html
MyApp/t
MyApp/t/00-signature.t
MyApp/t/01-load.t
MyApp/t/boilerplate.t
MyApp/t/perlcriticrc
MyApp/t/perl-critic.t
MyApp/t/pod-coverage.t
MyApp/t/pod.t
MyApp/t/test-app.t
MyApp/t/www
MyApp/t/PUT.STATIC.CONTENT.HERE
MyApp/Makefile.PL
MyApp/Changes
MyApp/README
MyApp/MANIFEST.SKIP
MyApp/MANIFEST
MyApp/server.pl

Options:

--module=module  Module name 
--dir=dirname    Directory name to create new module in (optional)

--builder=module Build with 'ExtUtils::MakeMaker' or 'Module::Build'
--eumm           Same as --builder=ExtUtils::MakeMaker
--mb             Same as --builder=Module::Build
--mi             Same as --builder=Module::Install

--author=name    Author's name (required)
--email=email    Author's email (required)
--license=type   License under which the module will be distributed
                 (default is the same license as perl)

--verbose        Print progress messages while working
--force          Delete pre-existing files if needed

--help           Show this message

DESCRIPTION

Set up the skeleton of a CGI::Application-based project, including a module, some templates and some automated tests.

By default the skeleton files will come within the templates/ directory where Module::Starter::Plugin::CGIApp is stored.

Multiple --builder options may be supplied to produce the files for multiple builders.

CONFIGURATION

You may set new defaults in a config file:

author: Mark Stosberg
email: mark@summersault.com
template_dir: ~/.module-starter/cgiapp/templates

cgiapp-starter will look for a configuration file before reading its command line parameters. The default location is $HOME/.module-starter/config but if the MODULE_STARTER_DIR environment variable is set, cgiapp-starter will look for config in that directory.

The configuration file is just a list of names and values, separated by colons. Values that take lists are just space separated. A sample configuration file might read:

author: Ricardo SIGNES
email:  rjbs@cpan.org
plugins: Module::Starter::Simple Module::Starter::Plugin::XYZ
xyz_option: red green blue

This format may become more elaborate in the future, but a file of this type should remain valid.