middleware to serve npm-css processed files


connect/express middleware for serving require enabled css files for use with web widgets.

In our app/server/whatever.js

app.use('/css/widgets.css', makeup(__dirname + '/css/widgets.css'));

widgets.css would look similar to

@require typeahead
/* other css rules can go here */
.foo {}
.bar {}

Typeahead is a widget we installed via npm. It provides some javascript (ala commonjs style) and a base stylesheet. We want to use that base stylesheet and customize it for our needs.

Our widgets.css remains a valid css file. If passed through makeup, the @require statements will load any css which the typeahead module provided (via the package.json:style) field.

When we visit we will be served a single css file with the rules for our typeahead widget.

All of the typeahead widget rules will be namespaced with .typeahead.

npm install makeup