Plack-Middleware-Assets-RailsLike

 view release on metacpan or  search on metacpan

README.md  view on Meta::CPAN

JavaScript and CSS (included Sass and LESS) files like Ruby on Rails Asset
Pipeline.

At first, you create a manifest file. The Manifest file is a list of JavaScript
and CSS files you want to bundle. You can also use Sass and LESS as css files.
The Manifest syntax is same as Rails Asset Pipeline, but only support
`require` command.

    > vim ./htdocs/assets/main-page.js
    > cat ./htdocs/assets/main-page.js
    //= require jquery
    //= require myapp



Next, write URLs of manifest file to your html. This middleware supports
versioning. So you can add version string in between its file basename and
suffix.

    <- $basename-$version.$suffix ->
    <script type="text/javascript" src="/assets/main-page-v2013060701.js">

examples/htdocs/assets/main.js  view on Meta::CPAN

//= require foo
//= require bar

lib/Plack/Middleware/Assets/RailsLike.pm  view on Meta::CPAN

JavaScript and CSS (included Sass and LESS) files like Ruby on Rails Asset
Pipeline.

At first, you create a manifest file. The Manifest file is a list of JavaScript
and CSS files you want to bundle. You can also use Sass and LESS as css files.
The Manifest syntax is same as Rails Asset Pipeline, but only support
C<require> command.

    > vim ./htdocs/assets/main-page.js
    > cat ./htdocs/assets/main-page.js
    //= require jquery
    //= require myapp


Next, write URLs of manifest file to your html. This middleware supports
versioning. So you can add version string in between its file basename and
suffix.

    <- $basename-$version.$suffix ->
    <script type="text/javascript" src="/assets/main-page-v2013060701.js">

If manifest files were requested, bundle files in manifest file and serve it or

t/00_compiler/assets/01_inline.js  view on Meta::CPAN

//= require foo
//= require bar
console.log('inline');

t/00_compiler/assets/01_multilines.js  view on Meta::CPAN

//= require foo
//= require bar

t/00_compiler/assets/01_oneline.js  view on Meta::CPAN

//= require foo

t/00_compiler/assets/02_inline.css  view on Meta::CPAN

/*
*= require foo
*= require bar
*/
#inline { height: 50% }

t/00_compiler/assets/02_multilines.css  view on Meta::CPAN

/*
*= require foo
*= require bar
*/

t/00_compiler/assets/02_oneline.css  view on Meta::CPAN

/*
*= require foo
*/

t/00_compiler/assets/03_less.css  view on Meta::CPAN

/*
*= require less
*/

t/00_compiler/assets/03_sass.css  view on Meta::CPAN

/*
*= require sass
*/

t/00_compiler/assets/03_scss.css  view on Meta::CPAN

/*
*= require scss
*/

t/assets/application.css  view on Meta::CPAN

/*
*= require foo
*= require bar
*/

t/assets/application.js  view on Meta::CPAN

//= require foo
//= require bar

t/assets/search_path.js  view on Meta::CPAN

//= require foo
//= require baz



( run in 0.762 second using v1.01-cache-2.11-cpan-0d8aa00de5b )