Neodymium Plated Magnet

    broccoli-less-single

    2.0.1 • Public • Published

    broccoli-less-single

    npm Version Build Status

    The broccoli-less-single plugin compiles .less files with less.js.

    This plugin is designed to compile a single, primary input file into a single output file, with a node of @importd dependencies. This differs from broccoli-less, which compiles each .less file individually into a .css file and doesn't support @imports or a single output file depending on multiple inputs.

    This code is based heavily on broccoli-sass

    Installation

    npm install --save-dev broccoli-less-single

    Usage

    const compileLess = require('broccoli-less-single');
    
    const outputNode = compileLess(inputNodes, inputFile, outputFile, options)
    • inputNodes: An array of nodes that act as the include paths for less. If you have a single node, pass [node].

    • inputFile: Relative path of the main .less file to compile. This file must exist in one of the inputNodes.

    • outputFile: Relative path of the output CSS file.

    • options: A hash of options for less + caching options.

    Example

    var appCss = compileLess(sourceNodes, 'myapp/app.less', 'assets/app.css')

    @import-Example

    /* file: sub.less */
    h1 {
      font-size: 200em;
    }
    
    /* =================== */
    
    /* file: app.less */
    @import "sub.less";
    
    html, body {
      margin: 20px;
    }

    Bootstrap-Example

    A sample project using bootstrap and broccoli-less-single can be found here.

    // Brocfile.js
    const Funnel      = require('broccoli-funnel');
    const compileLess = require('broccoli-less-single');
    const mergeTrees  = require('broccoli-merge-trees');
    
    const appTree = funnel('app');
    const lessTree = compileLess(appTree, 'styles/app.less', 'assets/app.css', {
      paths: ['.', 'bower_components/bootstrap/less'],
      // Note: if you want to cache to avoid possibly expensive rebuilds
      cacheInclude: [/.*\.(css|less)$/],
      cacheExclude: [],
    });
    
    module.exports = mergeTrees([appTree, lessTree]);

    Install

    npm i broccoli-less-single

    DownloadsWeekly Downloads

    6,696

    Version

    2.0.1

    License

    MIT

    Unpacked Size

    7.95 kB

    Total Files

    6

    Last publish

    Collaborators

    • gabrielgrant
    • jasonmit