{"id":16816,"library":"fusebox-cli","title":"FuseBox Bundler","description":"FuseBox is a JavaScript bundler and module loader known for its fast bundling times and zero-configuration approach for common setups. It aims to combine features found in tools like webpack and SystemJS. Key differentiators include first-class TypeScript support, built-in Rollup integration, and a developer-friendly experience with a fast dev server and Hot Module Replacement (HMR). The latest major version of the core bundler, `fuse-box`, is v4.0.0, released in April 2020. However, development appears to have ceased, with no significant updates to the core library since then, and the `fusebox-cli` package itself has not been updated since February 2018. Users should be aware that the project is effectively abandoned, lacking active maintenance or a release cadence, making it a potentially risky choice for new or ongoing projects requiring support and modern compatibility.","status":"abandoned","version":"1.3.135","language":"javascript","source_language":"en","source_url":"https://github.com/fuse-box/fuse-box","tags":["javascript","typescript"],"install":[{"cmd":"npm install fusebox-cli","lang":"bash","label":"npm"},{"cmd":"yarn add fusebox-cli","lang":"bash","label":"yarn"},{"cmd":"pnpm add fusebox-cli","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"Crucial for development, especially when using FuseBox's first-class TypeScript support. Explicitly mentioned in the quickstart installation.","package":"typescript","optional":true}],"imports":[{"note":"This is the primary class for configuring and running the bundler. Requires the `fuse-box` package, not `fusebox-cli`. Assume named import for TypeScript environments.","wrong":"import FuseBox from 'fuse-box';","symbol":"FuseBox","correct":"import { FuseBox } from 'fuse-box';"},{"note":"For CommonJS environments. While FuseBox supports modern targets, many build scripts might still use CommonJS `require` syntax. Destructuring is typical for named exports.","wrong":"const FuseBox = require('fuse-box');","symbol":"FuseBox","correct":"const { FuseBox } = require('fuse-box');"}],"quickstart":{"code":"import { FuseBox } from 'fuse-box';\n\n// Basic configuration for bundling a TypeScript project\nconst fuse = FuseBox.init({\n    homeDir: \"src/\",\n    sourceMap: {\n         bundleReference: \"./sourcemaps.js.map\",\n         outFile: \"sourcemaps.js.map\"\n    },\n    outFile: \"./out.js\",\n    cache: true,\n    log: true\n});\n\n// Bundle the main entry point 'index.ts'\nfuse.bundle(\">index.ts\");\n\n// To run the development server with HMR (Hot Module Replacement)\n// fuse.dev({\n//     port: 4444,\n//     hmr: true,\n// });\n// fuse.bundle(\">index.ts\");\n","lang":"typescript","description":"This example demonstrates how to initialize FuseBox with basic configuration for a TypeScript project and bundle a single entry file into an output file."},"warnings":[{"fix":"Consult the official FuseBox v4 documentation (fuse-box.org/docs/getting-started/setup) for migration details and updated configuration options. Review your `fuse.js` or configuration file for compatibility.","message":"Version 4.0.0 of the `fuse-box` core library introduced significant changes and improvements, which are likely to include breaking changes from previous major versions (v3.x). Directly upgrading without consulting the documentation can lead to build failures.","severity":"breaking","affected_versions":">=4.0.0"},{"fix":"Consider migrating to an actively maintained bundler (e.g., Webpack, Rollup, Vite, esbuild) for new projects or existing projects requiring ongoing support, security updates, and compatibility with the latest ecosystem standards.","message":"The `fuse-box` bundler project and its companion `fusebox-cli` appear to be abandoned. The core `fuse-box` library has not seen updates since April 2020 (v4.0.0), and `fusebox-cli` has not been updated since February 2018 (v1.3.135). Continued use may lead to compatibility issues with newer Node.js versions, security vulnerabilities, or lack of support for modern JavaScript/TypeScript features.","severity":"breaking","affected_versions":">=1.0.0 (fusebox-cli), >=4.0.0 (fuse-box)"},{"fix":"Always ensure the `fuse-box` package is installed as a development dependency: `npm install fuse-box --save-dev` or `yarn add fuse-box --dev`. The quickstart often recommends `npm install typescript fuse-box --save-dev`.","message":"There is a distinction between the `fusebox-cli` package and the `fuse-box` core library. While `fusebox-cli` provides command-line utilities, the main bundler logic and its configuration are handled by the `fuse-box` package. It's crucial to install `fuse-box` as the core dependency, not just `fusebox-cli`, for bundler functionality.","severity":"gotcha","affected_versions":"*"}],"env_vars":null,"last_verified":"2026-04-22T00:00:00.000Z","next_check":"2026-07-21T00:00:00.000Z","problems":[{"fix":"Ensure `fuse-box` is installed (`npm install fuse-box --save-dev`) and imported using `import { FuseBox } from 'fuse-box';` for ESM or `const { FuseBox } = require('fuse-box');` for CommonJS.","cause":"The `fuse-box` package was not imported correctly, or the `fusebox-cli` package was installed instead of the core `fuse-box` library which contains the `FuseBox` class.","error":"TypeError: FuseBox.init is not a function"},{"fix":"Install `fuse-box` as a development dependency: `npm install fuse-box --save-dev` or `yarn add fuse-box --dev`. If using TypeScript, ensure your `tsconfig.json` is correctly configured to include `node_modules/@types`.","cause":"The `fuse-box` package is not installed in your project's `node_modules`, or TypeScript cannot resolve its type definitions.","error":"TS2307: Cannot find module 'fuse-box' or its corresponding type declarations."},{"fix":"Either configure your project to use ESM (e.g., add `\"type\": \"module\"` to `package.json`, or use a `.mjs` file extension for your build script) or switch to CommonJS `require` syntax: `const { FuseBox } = require('fuse-box');`.","cause":"You are attempting to use ECMAScript Modules (ESM) `import` syntax in a file or environment configured for CommonJS (CJS).","error":"SyntaxError: Cannot use import statement outside a module"}],"ecosystem":"npm","meta_description":null}