- Compare a full Mojolicious app to a lite app with the same functionality.
- See an example of DBIx::Class usage with Mojolicious
- See an example of tests for a Mojolicious app
- Both apps make use of the DBIx::Class schema.
- The schema is in lib/Schema.pm, lib/Schema/*
- The DBIx::Class schema connects to a provided sqlite3 database, test.db
- The controller tests create a new test.db, populated using fixtures from t/fixtures/*
- The schema tests use an in-memory sqlite3 database, populated using fixtures from t/fixtures/*
- Test::Database is a utility for populating the sqlite3 databases with fixtures from t/fixtures/*
Heroku is running Hypnotoad, the full featured UNIX optimized preforking non-blocking I/O HTTP 1.1 and WebSocket server built around the very well tested and reliable Mojo::Server::Daemon with IPv6, TLS, Bonjour, libev and hot deployment support that just works.
To easily deploy your own Mojolicious app to Heroku, check out Deploy Perl Mojolicious web apps to Heroku.
To run the full app:
To run the lite app:
(Both the Full and Lite apps are identical in functionality)
Requirements for running locally
Easy, one-step installation of modules:
curl -L cpanmin.us | perl - Mojolicious Modern::Perl DBIx::Class DateTime DateTime::Format::SQLite \ Time::Duration File::Slurp SQL::Translator
A minimum of Perl 5.10 is required. If your Perl is too old, Perlbrew is über easy to install!
- MojoFull.pm - Mojolicious Application
- MojoFull/ - Mojolicious Controllers
- Schema.pm - DBIx::Class model
- Database.pm - Utility class for populating test fixtures
- public/ - Static files
- t/ - Tests
- mojolite - Mojolicious::Lite app, with all the application files listed above embedded
- README.md - This file