Busta
Util to fingerprint asset filenames.
Installation
$ npm install busta
or install CLI util globally
$ npm install -g busta
API
busta(filename, [options,] callback)
Arguments
- filename
String
File to fingerprint/bust. - options
Object
optional- outdir
String
: Directory to create new file in. Default is same as the original file. - prefix
String
: String to prepend filename with. Default is base of original file. - noprefix
Boolean
: If true filename will not be prepended with prefix. Default isfalse
. - encoding
String
: Used with hasher. Default is"utf8"
. - hash
String|Function
: Used with hasher. Default is"md5"
. If value is a function, the function will be passed the file contents and it must return a string.
- outdir
- callback(err, newfile)
Function
Wherenewfile
has the following properties:name
Fingerprinted filename.absolute
Absolute path.dir
Directory of file.fingerprint
var busta = ; ;// => File "assets/js/example-6c7473255395b5d9f020065b3915cc86.js" created ;// => File "assets/js/6c7473255395b5d9f020065b3915cc86.js" created
Command Line Usage
$ busta --file <file-to-bust> [options] Options: -h, --help output usage information -V, --version output the version number -f, --file <file> file to bust - required -o, --outdir <outdir> directory to write new file to -p, --prefix <prefix> filename prefix - default is base name of file -n, --noprefix do not use a file prefix -e, --encoding <encoding> encoding used by hasher - default is utf8 -H, --hash <hash> hash algorithm - default is md5
Examples
$ busta --file assets/js/example.js# => Creates assets/js/example-6c7473255395b5d9f020065b3915cc86.js $ busta --file assets/js/example.js --noprefix# => Creates assets/js/6c7473255395b5d9f020065b3915cc86.js $ busta --file assets/js/example.js --prefix super-duper# => Creates assets/js/super-duper-6c7473255395b5d9f020065b3915cc86.js $ busta --file assets/js/example.js --outdir deploy/app# => Creates deploy/app/example-6c7473255395b5d9f020065b3915cc86.js