app-root

3.0.0 • Public • Published

app-root npm npm

Returns a list of application entry points for front-end applications (JS and Sass).

npm install app-root

An entry point (i.e., root) is a file that no other file requires/imports.

Works with AMD, CommonJS, ES6, and SASS apps.

This library is particularly useful for automatically deducing the entry point for r.js or browserify configurations as done in YA.

A directory may have many roots. This is true if you have multiple apps within a single directory or if your app uses a multi-bundle architecture (where each page on your site has its own JS app).

Usage

var getAppRoot = require('app-root');
 
// Find the application roots within the js folder
getAppRoot({
  directory: './js',
  success: function (roots) {
    ...
  }
});

With configurable options:

getAppRoot({
  directory: './js',
  success: function (roots) {
    ...
  },
 
  ignoreDirectories: [/.+_components/, 'vendor', 'node_modules', '.git'],
  ignoreFiles: ['Gruntfile.js'],
  includeNoDependencyModules: true,
  config: 'path/to/my/requirejs/config.js'
});

Options

  • ignoreDirectories: list of directory names (strings or regex) to ignore
  • ignoreFiles: list of file names (strings or regex) to ignore
  • includeNoDependencyModules: (default false) Whether or not to include, as potential roots, modules that have no dependencies
  • config: path to your module loader configuration (for resolving aliased module paths)

Or via a shell command

approot directory

  • Where directory is the directory containing roots you'd like to identify

/app-root/

    Package Sidebar

    Install

    npm i app-root

    Weekly Downloads

    12

    Version

    3.0.0

    License

    MIT

    Unpacked Size

    15.9 kB

    Total Files

    39

    Last publish

    Collaborators

    • mrjoelkemp