ify-loader

raw JSON →
1.1.0 verified Sat Apr 25 auth: no javascript

Webpack loader that automatically applies browserify transforms to dependencies via package.json browserify.transform field. Version 1.1.0 is the latest release; the project is in experimental/stable state with low release cadence. Unlike transform-loader, ify-loader reads transforms from each dependency's package.json, eliminating manual configuration for each transform in complex projects. Specifically aimed at Webpack users migrating from browserify or maintaining hybrid projects that rely on browserify transforms in node_modules.

error Error: Cannot find module 'ify-loader'
cause ify-loader not installed in the project where webpack runs.
fix
Run npm install --save-dev ify-loader in the project root.
error Module build failed: TypeError: loaderUtils.parseQuery is not a function
cause Webpack 4+ removed loaderUtils.parseQuery; ify-loader uses older API.
fix
Downgrade to Webpack 3 or use a wrapper that polyfills loader-utils.
error Invalid configuration object. configuration.module has an unknown property 'loaders'.
cause Webpack 2+ uses module.rules, not module.loaders.
fix
Change to module.rules and adjust syntax: { test: /node_modules/, use: ['ify-loader'] }.
gotcha Adding ify-loader without 'enforce: post' may cause conflicts with other loaders that transform source files.
fix Use 'enforce: post' when applying to your own project's .js files.
gotcha ify-loader only works with Webpack 1.x loaders syntax (module.loaders). Not compatible with Webpack 2+ module.rules.
fix If using Webpack 2+, consider using a different loader or manually converting to rule syntax.
deprecated ify-loader uses experimental stability badge; no major updates since initial release. May not support newer Webpack or Node.js versions.
fix Test with your target Webpack/Node versions; consider alternatives if issues arise.
npm install ify-loader
yarn add ify-loader
pnpm add ify-loader

Webpack configuration applying ify-loader to node_modules and your project, with package.json browserify.transform example.

// webpack.config.js
module.exports = {
  module: {
    loaders: [
      // Apply to all dependencies in node_modules
      {
        test: /node_modules/,
        loader: 'ify-loader'
      },
      // Or apply to your own source to pick up local browserify transforms
      {
        test: /\.js$/,
        loader: 'ify-loader',
        enforce: 'post'
      }
    ]
  }
};

// package.json (in your project or a dependency)
{
  "browserify": {
    "transform": ["glslify", "brfs"]
  }
}