More Information
  • Installing and setting up Catalyst
  • How MVC works in Catalyst, explained with a simple example
  • Using the Template toolkit to generate HTML output
  • Designing a database schema and accessing a SQLite database
  • Creating a CRUD interface to a database
  • Using FormBuilder to define auto-generating and self-validating forms
  • Creating easy-to-maintain configuration files
  • Importing CVS files into a database
  • Paginating search results
  • Using the session plug-in to add sessions to an application
  • Authentication and authorization, explored by implementing page-level and record-level control
  • Building an editable web interface
  • Features of DBIC for easy handling of data
  • Interfacing to your data:
  • Mixing a procedural interface with a relational DBIx::Class interface
  • Writing a database interface without DBIx::Class
  • Building a custom Model without using any database
  • Adding a REST API to allow other applications to access your application
  • Adding AJAX interactivity to your application
  • Incorporating RSS feeds in your application
  • Automated testing and the "Test-Driven Development" methodology, discussed in depth
  • Techniques to test your Catalyst application easily
  • Writing tests for applications developed in this book with Mechanize and Selenium
  • Packaging your application:
  • Manage dependencies and create packages easily using Makefile.PL
  • Create a unique configuration for each environment
  • How to set up for a variety of web servers
  • How to make your application a self-contained file (PAR)

Many web applications are implemented in a way that makes developing them painful and repetitive. Catalyst is an open-source Perl-based Model-View-Controller framework that aims to solve this problem by reorganizing your web application to design and implement it in a natural, maintainable, and testable manner, making web development fun, fast, and rewarding.

Everything that your web application needs to do is only written once; you connect to the database in one place, have configuration in one place, etc. Then, you just write actions for each URL that your application needs, without worrying about the database connections or HTML to produce. Catalyst will handle the details so you can worry about writing your application.

Catalyst is designed to be reliable. There are hundreds of production applications and thousands of users. The code is well-tested, and new releases almost always maintain compatibility with applications written for older versions. You don't have to worry about Catalyst breaking your application and slowing down your development. It just works.

Most importantly, Catalyst has a thriving community. You can ask a question on the IRC channel and get a response at almost any time of the day.
This book embodies Catalyst's philosophies of Do It Yourself and Don't Repeat Yourself.



  • Understand the Catalyst Framework and MVC architecture
  • Build and test a site with Catalyst
  • Detailed walkthroughs to create sample applications
  • Extend Catalyst through plug-ins
Page Count 200
Course Length 6 hours 0 minutes
ISBN 9781847190956
Date Of Publication 11 Dec 2007


Jonathan Rockway

Jonathan Rockway, a member of the Catalyst Core Team, has been programming Perl since his middle-school years. He became professionally involved with Perl when he was a desktop support minion at the University of Chicago and inherited a mod_perl application. He now works as a software developer at Infinity Interactive. In his spare time, he maintains a collection of modules on the CPAN and tries to speak at as many Perl conferences as possible.