Registry / web-framework / tinybundle

tinybundle

JSON →
library2.0.0jsnpmunverified

tinybundle is a minimalist command-line module bundler, currently at version 2.0.0, designed for simple bundling tasks without the complexity of modern bundlers like Webpack or Rollup. It distinguishes itself by eschewing a JavaScript API, relying solely on CLI arguments and a `tbdeps.json` configuration file. This file specifies a list of npm packages and local JavaScript files (prefixed with `!`), optionally allowing for pre-processing commands (prefixed with `?`) to be executed via `system` calls before bundling. The tool does not support traditional loaders, opting instead for this external command execution model. Its release cadence is not specified, but it targets users looking for an extremely lightweight, no-frills bundling solution where custom pre-processing can be scripted externally. It consolidates dependencies and local code into a single, minified output file.

web-framework
Install & Compatibility
Where this runs
tested against v? · npm install
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
musl
node 18226 runs
build_error
glibc
node 18226 runs
build_error
Code
Verified usage

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

This package is designed exclusively for command-line usage and provides no JavaScript API or module exports for programmatic import.

N/A - tinybundle is a CLI-only tool.

Attempts to import any symbols from 'tinybundle' will result in a module not found or undefined export error, as there are no exports.

N/A - tinybundle is a CLI-only tool.

Use the `tinybundle` command directly from your terminal after global installation (`npm install -g tinybundle`) or via `npx tinybundle`.

N/A - tinybundle is a CLI-only tool.

Demonstrates bundling a third-party npm package (jQuery) and a local JavaScript file into a single output file using the tinybundle CLI and `tbdeps.json` configuration. The output bundle's content is then displayed.

mkdir my-bundle-project cd my-bundle-project npm init -y npm install jquery echo '["jquery", "!index.js"]' > tbdeps.json echo 'console.log("Hello from index.js!");' > index.js npx tinybundle ./dist/bundle.js cat ./dist/bundle.js
tinybundle --version
Debug
Known footguns
gotchatinybundle is exclusively a CLI tool and offers no programmatic JavaScript API. It cannot be imported or used directly within Node.js applications.
gotchaThe bundler does not support built-in loaders for languages like TypeScript, JSX, or CSS. All non-standard JavaScript must be pre-processed using external commands.
gotchaCommands prefixed with `?` in `tbdeps.json` are executed as `system()` calls, which can have security implications or unexpected behavior depending on the execution environment and the commands used.
gotchatinybundle outputs a single, minified JavaScript file and does not support advanced bundling features like code splitting, tree shaking, or separate asset handling.
gotchaAll npm packages specified in `tbdeps.json` must be pre-installed in your project's `node_modules` directory before running tinybundle.
Upgrade
Version history

Breaking-change detection hasn't run for this library yet.

Audit
Security & dependencies

CVE tracking and dependency tree are planned for a later release.

Agent activity
11 hits · last 30 days
gptbot
4
ahrefsbot
4
script
1
mj12bot
1
claudebot
1
Resources