{"id":20143,"library":"interpolate-loader","title":"interpolate-loader","description":"interpolate-loader is a Webpack loader for interpolating require results within files, such as JSON manifest files. The current stable version is 2.0.1, which requires Webpack >=3.0.0. It replaces template placeholders like {{...}} with resolved Webpack module outputs, enabling dynamic injection of metadata, file references, or resource URLs. Key differentiators include customizable prefix/suffix delimiters and compatibility with companion loaders like prop-loader and extricate-loader.","status":"active","version":"2.0.1","language":"javascript","source_language":"en","source_url":"https://github.com/erikdesjardins/interpolate-loader","tags":["javascript","webpack"],"install":[{"cmd":"npm install interpolate-loader","lang":"bash","label":"npm"},{"cmd":"yarn add interpolate-loader","lang":"bash","label":"yarn"},{"cmd":"pnpm add interpolate-loader","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"Peer dependency required for loader integration","package":"webpack","optional":false}],"imports":[{"note":"ESM import works in Webpack config; CommonJS require is also acceptable in Node.js.","wrong":"const interpolateLoader = require('interpolate-loader');","symbol":"interpolate-loader","correct":"import interpolateLoader from 'interpolate-loader';"}],"quickstart":{"code":"// webpack.config.js\nmodule.exports = {\n  entry: 'extricate-loader!interpolate-loader!manifest.json',\n  output: { filename: 'manifest.json' },\n  module: {\n    rules: [\n      {\n        test: /\\.html$/,\n        use: [\n          { loader: 'file-loader', options: { name: '[name].[ext]' } },\n          'extricate-loader',\n          'html-loader'\n        ]\n      }\n    ]\n  },\n  plugins: [\n    new (require('inert-entry-webpack-plugin'))()\n  ]\n};","lang":"javascript","description":"Shows how to use interpolate-loader in a Webpack configuration to process a JSON manifest file and interpolate placeholders."},"warnings":[{"fix":"Upgrade Webpack to version 3.0.0 or later.","message":"v2.0.0 requires Webpack >=3.0.0, breaking compatibility with Webpack <3.","severity":"breaking","affected_versions":">=2.0.0"},{"fix":"Update Node.js to version 4+ and Webpack to 2+.","message":"v1.0.0 drops support for Node <4 and requires Webpack >=2.0.0.","severity":"breaking","affected_versions":">=1.0.0 <2.0.0"},{"fix":"Use query format: interpolate-loader?prefix=(*&suffix=*).","message":"The loader uses default prefix {{ and suffix }}, but custom delimiters must include both prefix and suffix in query string.","severity":"gotcha","affected_versions":">=1.0.0"}],"env_vars":null,"last_verified":"2026-04-25T00:00:00.000Z","next_check":"2026-07-24T00:00:00.000Z","problems":[{"fix":"Run npm install --save-dev interpolate-loader","cause":"interpolate-loader is not installed as a dev dependency.","error":"Module not found: Error: Can't resolve 'interpolate-loader'"},{"fix":"Ensure rule uses 'use' array with loader strings or objects, e.g., { test: /\\.json$/, use: 'interpolate-loader' }","cause":"Using Webpack 4+ with modern module rules syntax, but loader is configured incorrectly.","error":"Invalid configuration object. Webpack has been initialised using a configuration object that does not match the API schema."}],"ecosystem":"npm","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}