Registry / devops / hops-build-config

hops-build-config

JSON →
library10.4.6jsnpmunverified

hops-build-config is a Webpack and Babel configuration package for the Hops framework (v10.4.6). It provides three default Webpack configs: build (production), develop (dev server), and node (SSR). Configs can be extended via hops-config options or overridden with custom files using webpack-merge. Includes Babel presets (env, react) and plugins (class-properties, dynamic-import), PostCSS with cssnext and CSS Modules, and file loaders. Hops is developed by XING and targets universal React applications. It is semantically versioned but mature; releases have slowed. Compared to react-scripts or next.js, it offers lower-level control while still providing sensible defaults.

npm install hops-build-config
INSTALL
IMPORT
SIG · HOPS-BUILD-CONFIG
H
hops-build-config
devopsjavascriptv10.4.6
harness data pending
Install & Compatibility
Where this runs

No compatibility data collected yet for this library.

Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

buildConfig
import buildConfig from 'hops-build-config/configs/build'
const buildConfig = require('hops-build-config')
Direct require of the package root gives empty object; you must specify the config subpath: /configs/build, /configs/develop, or /configs/node.
developConfig
import developConfig from 'hops-build-config/configs/develop'
import developConfig from 'hops-build-config'
Same subpath requirement as buildConfig. Ensure you use the full path.
nodeConfig
const nodeConfig = require('hops-build-config/configs/node')
const nodeConfig = require('hops-build-config/node')
The configs are under /configs/ directory. Missing 'configs' is a common path mistake.

Extends the default Hops build Webpack config with a custom plugin using webpack-merge.

// Override build config in package.json // "hops": { "buildConfig": "./my-build.js" } // my-build.js const webpack = require('webpack'); const hopsBuildConfig = require('hops-build-config/configs/build'); const merge = require('webpack-merge'); const myCustomBuildConfig = { plugins: [ new webpack.EnvironmentPlugin({ MY_CUSTOM_ENV: 'fallback', }), ], }; module.exports = merge.strategy( { plugins: 'append' }, hopsBuildConfig, myCustomBuildConfig );
Debug
Known issues
deprecatedPackage is in maintenance mode; no active development.
fix
Consider migrating to a more modern framework like Next.js or Razzle.
affects: >=10.0.0
gotchaDirect import of package root returns empty object.
fix
Use subpath imports: require('hops-build-config/configs/build') etc.
affects: >=10.0.0
gotchaBabel plugins like transform-class-properties are deprecated in Babel 7.
fix
Switch to @babel/plugin-proposal-class-properties if upgrading Babel.
affects: >=10.0.0
Errors
Common errors & fixes
Error: Cannot find module 'hops-build-config'
Trying to require the root package instead of subpath.
fix
Use a config subpath: require('hops-build-config/configs/build')
Error: Cannot find module 'webpack-merge'
Missing optional dependency webpack-merge for merging configs.
fix
Install webpack-merge: npm install --save-dev webpack-merge
Upgrade
Version history
10.4.6latest on npm
Audit
Dependencies

No dependency data recorded yet.

Agent activity
4 hits · last 30 days
node
4
Resources
hops-build-config — npm install hops-build-config · libregistry