/development/module notes

h1. Information about the Modules MojoMojo Uses

h2. Overview

MojoMojo leverages the strength of numbers when it comes to modules. This is a place to describe how MojoMojo uses these CPAN modules.

h2. Model (Database)

  • DBIx::Class - Provides ORM between application and underlying database (PostgreSQL, SQLite, MySQL).
  • DBIx::Class::EncodedColumn - Store user password encrypted in database.

h2. View

  • Template Toolkit - Provides views of data/pages
  • Catalyst::View::TT - Hooks Template Toolkit into Catalyst

h2. Controller

  • Catalyst::Runtime - Glue the shit together.

h2. Search

  • KinoSearch - Provides integrated search engine.

h2. Sessions

  • Session::Store::File - Stores session information.

h2. Cache

  • Cache::FastMmap - Provides performance cache.

h2. Content Merge

  • Algorithm::Merge - Merge multiple edits
  • Algorithm::Diff - Show the difference in simultaneous edits.