tiny-asset-pipeline v1.4.2
tiny-asset-pipeline
tiny-asset-pipeline is a node library for compiling and serving web assets. It features dependency management for JavaScript and CSS assets, as well as Less. It's suitable for multi-page applications. Forget Grunt and Gulp,forge configuration.
Install:
npm install -g tiny-asset-pipeline
Run tests:
npm test
Features:
- Dependency management for Less(or CSS): support mixture @import of .css and .less. All *.css file is processed same as Less file(merge all @import recursively, compile it by lessc). It use the latest(v2.3.1) Less.js.
- Dependency management for JavaScript: using
require("../subDir/foo.js")
to require foo.js. Note it's not a CMD or AMD package manager, it just loads/merge the required Javascript file. Now It is a super simple commonjs package loader(although you can't compare it tobrowserify
orwebpack
) sinceversion 1.3.7
! It use UglifyJS to process the javascripts. - It integrated with autoprefixer. So you can write your CSS rules without vendor prefixes (in fact, forget about them entirely).
- Note: both
require
(for js) and@import
(for css and less) are using relative path, such as@import ../plugin/foo.css
. Images and fonts also use relative path. - It will rename asset(append md5 hash to name,such as
foo-1d5a631226eed334.js
). - All other assets except js/css/less, such as images and fonts, are copied and renamed to deploy directoty. All reference urls of images and fonts in the .less/.css are renamed automatically(such as
url(icon-update-3da2da84f7287796.png)
). - A md5_mapping.json will be generated under the root of destination directoty, you can set the
-mappingFile
option to config the file path and name.
Tips:
- All .js , .less and .css will be processed.
For partials files: any file(or directory) start with
_
or.
will be ignorged(does not been processed), such as_sub.js
or_partial.less
or_child.css
or_foobar_directory/
.
usage:
- For development environment , start server(as assets pipeline server, compile .less, concat .css and .js per request ):
tiny-asset-pipeline -start [-port 8888] [-root yourAssetsRoot]
- For production environment , batch process before deploy assets to production env :
tiny-asset-pipeline -from sourceDir -to destinationDir [-verbose or -v]
. Finally it will generate a md5_mapping.json under the root of destination directoty, you can read the content to find the md5 hash of a special file.
Why not Grunt or Gulp?
- Because I hate to write many configuration.
6 years ago
7 years ago
7 years ago
7 years ago
7 years ago
8 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago