npm-assets v0.1.2
npm-assets
Use static files from NPM packages.
This is a tool for copying static files (fonts, CSS, images, etc.) declared and
packaged in NPM modules into a folder. To define static files in a package, add
a assets field to the package.json containing an array of files to include.
These files will be copied (preserving the same directory structure) when this
tools is ran. It will recursively search for modules in the node_modules
folder.`
How ?
Lets say you have a dependency - mysite-css - which has a couple of CSS files
and an image that you'd like to use in your project. mysite-css has a
package.json that looks like this:
{
"name": "mysite-css",
"assets": [
"bootstrap.css",
"index.css",
"logo.png"
]
}If you run npm-assets public/ - npm assets will look inside
node_modules/mysite-css/package.json and see the 3 listed assets. After npm-assets has run, you should see public/ contains those 3 assets!
$ ls public
bootsrap.css index.css logo.pngJS Example
var assets = require('npm-assets');
assets(
process.cwd(), // root directory
'assets', // destination directory
done); // callbacknpm-assets(1)
Also included is the npm-assets executable. Simply run npm-assets <dest> to
search for all assets from modules in the current folder and copy them to the
dest folder.
# Copy all assets to the `assets` folder
npm-assets assetsPFAQ (Potentially Frequently Asked Questions)
What if I have two dependencies that both have a file with the same name?
If you have two dependencies, and both have an identically named file (for
example both have a logo.png asset). npm-assets will copy only the first of
those, when listed alphabetically. So if a-module/logo.png and
b-module/logo.png are both listed as assets, a-module/logo.png will be copied
over, and b-module/logo.png will be ignored.