table of contents
Mojolicious::Plugin::AssetPack::Guides::Developing(3pm) | User Contributed Perl Documentation | Mojolicious::Plugin::AssetPack::Guides::Developing(3pm) |
NAME¶
Mojolicious::Plugin::AssetPack::Guides::Developing - Developing with AssetPack
OVERVIEW¶
This guide will provide a setup for effective development with Mojolicious::Plugin::AssetPack.
GUIDE¶
Environment variables¶
It is possible to set environment variables to change the behavior of AssetPack:
- MOJO_ASSETPACK_DEBUG
Set this environment variable to get more debug to STDERR. Currently you can set it to a value between 0 and 3, where 3 provides the most debug.
- MOJO_ASSETPACK_LAZY
Set this environment variable if you want to delay processing the assets until they are requested. This can be very useful while developing when the assets are changed frequently.
Faster development cycle¶
For a faster development cycle, you can use MOJO_ASSETPACK_LAZY. This environment variable will make AssetPack only rebuild the asset that is in use on the current web page.
$ MOJO_ASSETPACK_LAZY=1 morbo myapp.pl
Enforcing production assets¶
To be sure that production assets are built correctly, you can add a unit test like the one below. This is especially important if you are using "MOJO_ASSETPACK_LAZY".
use Test::Mojo; use Test::More; $ENV{MOJO_MODE} = "production"; my $t = Test::Mojo->new("MyApp"); $t->get_ok("/") ->element_exists(q(head link[href$="/app.css"])) ->element_exists(q(body script[src$="/app.js"])); done_testing;
The element_exists() tests should match the topics defined when defining the different assets.
Optional modules¶
There are some optional modules you might want to install:
- CSS::Minifier::XS
Used by Mojolicious::Plugin::AssetPack::Pipe::Css.
- CSS::Sass
Used by Mojolicious::Plugin::AssetPack::Pipe::Sass.
- IO::Socket::SSL
Required if you want to download assets served over SSL.
- JavaScript::Minifier::XS
Used by Mojolicious::Plugin::AssetPack::Pipe::JavaScript.
SEE ALSO¶
Mojolicious::Plugin::AssetPack, Mojolicious::Plugin::AssetPack::Guides::Cookbook and Mojolicious::Plugin::AssetPack::Guides::Tutorial.
2024-12-07 | perl v5.40.0 |