frontender

Easy way to work with frontend files (such as html, css, js) via node.js

npm install frontender
12 downloads in the last month

Frontender

This is just a binding for popular compiling extensions for frontend (like stylus or jade) with some additional functionality (like caching).

Usage

Just add frontender into your packages.json and write something like this in your code.

var Frontender = require("./frontender/frontender");
Frontender.basedir = "./javascripts/";
Frontender.requireModule("uglify", { compress: true });
Frontender.compile("editor.js", function (code) {
  console.log("Compiled code: + " + code);
});

Modules

Since it's just a binding you have to add modules dependencies by yourself (good news: you shouldn't require them). Each module has his own specific options but there are some globals.

  • basedir (default: frontenders basedir) - basedir for file searching
  • cache (default: false) - if cache files

Uglify

The UglifyJS module for .js files. This module not only collects and compresses them but also adds require function similar to node.js (with namespacing and module.exports).

  • compress (default: false) - if compress output
  • comments (default: true) - if keep comments

Requirement: uglify-js 2.x

Stylus

Simple Stylus module for .styl and .stylus files.

Requirement: stylus >= 0.31.0

Jade

Jade is available both client and server side and module is suitable for both options.

  • compress (default: false) - if compress output
  • raw (default: false) - if return raw file (function will be returned otherwise)

Requirement: jade >= 0.28.0 (for raw === false only)

npm loves you