You're not currently signed in.

Basic concepts of Jifty

  • to build some website with Jifty, you need to construct an application. An application is something like a "world" in which your templates plus all the logic behind live. Every application is independent of all other applications.

  • every application has a configuration file named etc/config.yml. This config file is controlling the overall behavior of your application.

  • for every application you may use a different server that drives the application's pages.

  • an application has a database schema that minimally consists of some session-specific tables. The schema consists of tables, that are constructed (or updated) automatically based on model-specified requirements.

  • the logic behind your application is encapsulated in action classes. An action includes form definitions, form handling, error-checking and much more.

  • if you intend to use a database to store data, you define models. Every model defines data structures and other database related things that will automatically get updated into the database schema.

  • based on models, actions and an optional dispatcher the behavior of your application is defined. The behavior may vary from page to page and even depend on the current user.

  • Jifty uses HTML::Mason as the templating engine to render its templates. A comprehensive Manual about all Mason commands can be found at

    Building Blocks

The building blocks of Jifty visualized.