Webup is a minimalist builder/bundler for web projects, primarily concerned with reading, joining, and splitting HTML, CSS, and JavaScript files. Unlike opinionated, all-in-one bundlers, Webup's core is intentionally 'lazy,' relying heavily on a robust plugin and preset system to perform actual bundling, optimization, and transformation tasks. The current stable version is 1.8.0, published in 2021. The project has an open-ended release cadence, with the last update several years ago. Its key differentiator is its modular approach, requiring users to explicitly configure or choose presets and plugins to achieve a desired build process, offering high flexibility but requiring more setup than integrated solutions. It supports entry points, shell templates, destination paths, and source inclusion.
npm install webupVerified import paths — ran on the pinned version, not inferred.
Demonstrates a basic Webup build configuration, bundling HTML, CSS, and JavaScript into a specified destination using the default preset.
Always include `presets: ['default']` (after installing `webup-preset-default`) or your custom presets in the `webup` configuration object.
Consider migrating to a more actively maintained bundler (e.g., Vite, Rollup, Webpack) for new projects or for existing projects requiring ongoing support and security updates.
Ensure your `webup` configuration includes at least `presets: ['default']` after installing `webup-preset-default`.
Ensure your Node.js project is configured for ES modules (e.g., `"type": "module"` in `package.json`) or use `require()` syntax if strictly operating in CommonJS.