quickbundle 0.0.0-next-800b69a → 0.0.0-next-0db4314

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -11,19 +11,21 @@
11
11
  Quickbundle allows you to bundle a library in a **quick**, **fast** and **easy** way:
12
12
 
13
13
  - Fast build and watch mode powered by Rollup[^1] and SWC[^2].
14
- - Compile mode to create a standalone binary for systems that do not have Node.js installed (relies on [Node.js single executable applications feature](https://nodejs.org/api/single-executable-applications.html)).
14
+ - Compile mode to create standalone binaries for systems that do not have Node.js installed[^3].
15
15
  - Zero configuration: define the build artifacts in your `package.json`, and you're all set!
16
16
  - Support of `cjs` & `esm` module formats output.
17
17
  - Support of several loaders including JavaScript, TypeScript, JSX, JSON, and Images.
18
18
  - TypeScript's declaration file (`.d.ts`) bundling.
19
19
  - Automatic dependency inclusion:
20
- - For the build/watch mode, `peerDependencies` and `dependencies` are not bundled in the final output, `devDependencies` are unless they're not imported.
21
- - For the compile mode: all dependencies are included to make the code standalone.
20
+ - For the build and watch mode, `peerDependencies` and `dependencies` are not bundled in the final output, `devDependencies` are unless they're not imported.
21
+ - For the compile mode, all dependencies are included to make the code standalone.
22
22
 
23
23
  [^1]: A [module bundler](https://rollupjs.org/) optimized for better tree-shaking processing and seamless interoperability of CommonJS and ESM formats with minimal code footprint.
24
24
 
25
25
  [^2]: A [TypeScript / JavaScript transpiler](https://swc.rs/) for quicker code processing including TypeScript transpilation, JavaScript transformation, and, minification.
26
26
 
27
+ [^3]: It relies on [Node.js single executable applications feature](https://nodejs.org/api/single-executable-applications.html).
28
+
27
29
  <br>
28
30
 
29
31
  ## 🚀 Quick Start
@@ -98,15 +100,18 @@ yarn add quickbundle
98
100
 
99
101
  </details>
100
102
 
103
+ > [!WARNING]
104
+ > Critical content demanding immediate user attention due to potential risks.
105
+
101
106
  <details>
102
- <summary><strong>For compiling single executable applications</strong></summary>
107
+ <summary><strong>For compiling executables</strong></summary>
103
108
 
104
109
  ```jsonc
105
110
  {
106
111
  "name": "lib", // Package name
107
112
  "source": "./src/index.ts", // Source code entry point. Make sure that it starts with `#!/usr/bin/env node` pragme to make the binary portable for consumers who would like to use it by installing the package instead of using the generated standalone executable.
108
113
  "bin": {
109
- "your-binary-name": "./dist/index.cjs", // Binary information used to get the executable name from the key and, from the value, the build file to inject into the generated executable.
114
+ "your-binary-name": "./dist/index.cjs", // Binary information to get the executable name from the key and, from the value, the bundled file to generate from the source code and inject into the executable. The generated executable will be located in the same folder as the bundled file and, dependending on the current operating system running the `compile` command, the executable will be named either `your-binary-name.exe` on Windows or `your-binary-name` on Linux and macOS.
110
115
  },
111
116
  // "bin": "./dist/index.cjs", // Or, if the binary name follows the package name, you can define a string-based `bin` value.
112
117
  "scripts": {
@@ -116,8 +121,15 @@ yarn add quickbundle
116
121
  }
117
122
  ```
118
123
 
119
- > [!warning] Limitations
120
- > TODO
124
+ > [!warning]
125
+ > The `compile` command relies on the [Node.js SEA (Single Executable Applications)](https://nodejs.org/api/single-executable-applications.html). This feature comes with some limitations which Quickbundle attempts to address:
126
+
127
+ > [!warning]
128
+ >
129
+ > The `compile` command relies on the [Node.js SEA (Single Executable Applications)](https://nodejs.org/api/single-executable-applications.html). This feature comes with some limitations which Quickbundle attempts to address:
130
+ >
131
+ > - The source code must not rely on [external dependencies](https://github.com/nodejs/single-executable/discussions/70) 🛑. To partially address this, Quickbundle bundles all dependencies (whatever their types, as long as they're used) and inline dynamic imports by default ✅.
132
+ > - The bundled code must use the CommonJS module system 🛑. To address this, Quickbundle always outputs CJS modules in compile mode ✅.
121
133
 
122
134
  </details>
123
135
 
package/dist/index.mjs CHANGED
@@ -15,7 +15,7 @@ import os from 'node:os';
15
15
  import { gzipSize } from 'gzip-size';
16
16
 
17
17
  var name = "quickbundle";
18
- var version = "0.0.0-next-800b69a";
18
+ var version = "0.0.0-next-0db4314";
19
19
 
20
20
  const CWD = process.cwd();
21
21
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "quickbundle",
3
- "version": "0.0.0-next-800b69a",
3
+ "version": "0.0.0-next-0db4314",
4
4
  "description": "The zero-configuration transpiler and bundler for the web",
5
5
  "author": {
6
6
  "name": "Ayoub Adib",