browserify-css

0.1.0 • Public • Published

browserify-css

A Browserify transform for bundling, rebasing, inlining, and minifying CSS files.

Getting Started

If you're new to browserify, check out the browserify handbook and the resources on browserify.org.

Installation

npm install --save-dev browserify-css

Usage

app.css:

@import url("modules/foo/index.css");
@import url("modules/bar/index.css");
body {
    background-color: #fff;
}

app.js:

var css = require('./app.css');
console.log(css);

You can compile your app by passing -t browserify-css to browserify:

$ browserify -t browserify-css app.js > bundle.js

Each require('./path/to/file.css') call will concatenate CSS files with @import statements, rebasing urls, inlining @import, and minifying CSS. It will add a style tag with an optional data-href attribute to the head section of the document during runtime:

<html>
<head>
    <style type="text/css" data-href="app.css">...</style>
</head>
</html>

Configuration

You can put your browserify-css options into your package.json file:

{
    "browserify-css": {
        "auto-inject": true,
        "minify": true,
        "rootDir": "."
    }
}

or use an external configuration file like below:

{
    "browserify-css": "./config/browserify-css.js"
}

config/browserify-css.js:

module.exports = {
    "auto-inject": true,
    "minify": true,
    "rootDir": "."
};

Options

auto-inject

Type: Boolean Default: true

If true, each require('path/to/file.css') call will add a style tag to the head section of the document.

rootDir

Type: String Default: ./

An absolute path to resolve relative paths against the project's base directory.

minfiy

Type: Boolean Default: false

minify-options

Type: Object Default: {}

Check out a list of CSS minify options at CleanCSS.

License

MIT

Package Sidebar

Install

npm i browserify-css@0.1.0

Version

0.1.0

License

MIT

Last publish

Collaborators

  • cheton