Bundilio: Simple JavaScript File Concatenator

0.4.5 · abandoned · verified Tue Apr 21

Bundilio is a highly rudimentary JavaScript utility package designed for basic file concatenation, combining multiple JavaScript source files into a single output file. Last published over seven years ago, version 0.4.5 is the most recent release, indicating the package is abandoned. It operates purely as a concatenator and lacks the sophisticated features expected of modern module bundlers, such as dependency resolution, module graphing, tree-shaking, code splitting, asset handling (CSS, images), or transpilation for different JavaScript versions (e.g., ES6+ to ES5). This makes it unsuitable for contemporary web development projects, which typically require robust bundling capabilities provided by tools like Webpack, Rollup, Parcel, or esbuild. Its minimal scope and lack of maintenance mean it does not adhere to current best practices for performance, security, or developer experience.

Common errors

Warnings

Install

Imports

Quickstart

Demonstrates how to use Bundilio to concatenate multiple JavaScript source files into a single output file using its CommonJS API. It creates temporary source files and an output directory.

const fs = require('fs');
const path = require('path');
const bundle = require('bundilio');

const inputDir = path.join(__dirname, 'src');
const outputDir = path.join(__dirname, 'dist');

// Create dummy source files
fs.mkdirSync(inputDir, { recursive: true });
fs.writeFileSync(path.join(inputDir, 'moduleA.js'), 'console.log("Module A loaded");\nmodule.exports = { name: "A" };');
fs.writeFileSync(path.join(inputDir, 'moduleB.js'), 'console.log("Module B loaded");\nmodule.exports = { value: 123 };');

// Ensure output directory exists
fs.mkdirSync(outputDir, { recursive: true });

const inputFiles = [
  path.join(inputDir, 'moduleA.js'),
  path.join(inputDir, 'moduleB.js')
];
const outputFile = path.join(outputDir, 'app.bundle.js');

bundle(inputFiles, outputFile, (err) => {
  if (err) {
    console.error('Bundling failed:', err);
    return;
  }
  console.log(`Successfully bundled ${inputFiles.length} files to ${outputFile}`);
  const bundledContent = fs.readFileSync(outputFile, 'utf8');
  console.log('\n--- Bundled Content ---');
  console.log(bundledContent);
  console.log('--------------------');
});

view raw JSON →