Catalyst (software)

Catalyst
Original author(s)Sebastian Riedel
Stable release
5.90131 / 20 July 2023; 15 months ago (2023-07-20)[1]
Written inPerl
TypeWeb application framework
LicensePAL and GPL
Websitehttp://catalyst.perl.org/

Catalyst is an open-source web application framework written in Perl. It closely follows the model–view–controller (MVC) architecture and supports a number of experimental web patterns. It is written using Moose, a modern object system for Perl. Its design is heavily inspired by frameworks such as Ruby on Rails, Maypole, and Spring.

Catalyst can be used by web application developers to deal with code common to all web applications. It provides an interface for receiving page requests, dispatching page requests into developer-written code to process, and return of the requests. Catalyst also provides a standardised interface for data models, authentication, session management and other common web application elements.

All of these elements are implemented as plugins to a set of common interfaces, allowing the developer to change the specific method used (e.g. a session storing in shared memory versus as a database table, or using FastCGI versus operating as an within Apache's mod_perl) by changing the configuration of Catalyst to use a different plugin without altering the application code.

Catalyst is primarily distributed through the CPAN, which is the official distribution channel for Perl libraries and applications.

  1. ^ "CPAN Module Release". Catalyst. Retrieved 15 August 2024.