a comparison of tools within the JavaScript ecosystem

cleanup: reorganize packages

authored by samanthanguyen.me and committed by tangled.org 735dc779 a74b900e

Changed files
+147 -26
libs
esbuild
node-esbuild-js-cjs
node-esbuild-js-esm
node-esbuild-ts-esm
parcel
node-parcel-js-cjs
node-parcel-js-esm
node-parcel-ts-esm
rollup
tsc
node-tsc-js-cjs
node-tsc-js-esm
node-tsc-ts-esm
tsup
node-tsup-js-cjs
node-tsup-js-esm
node-tsup-ts-esm
vite
webpack
libs/node-esbuild-js-cjs/build.js libs/esbuild/node-esbuild-js-cjs/build.js
libs/node-esbuild-js-cjs/package.json libs/esbuild/node-esbuild-js-cjs/package.json
libs/node-esbuild-js-cjs/src/index.js libs/esbuild/node-esbuild-js-cjs/src/index.js
libs/node-esbuild-js-cjs/tsconfig.json libs/esbuild/node-esbuild-js-cjs/tsconfig.json
libs/node-esbuild-js-esm/build.js libs/esbuild/node-esbuild-js-esm/build.js
libs/node-esbuild-js-esm/package.json libs/esbuild/node-esbuild-js-esm/package.json
libs/node-esbuild-js-esm/src/index.js libs/esbuild/node-esbuild-js-esm/src/index.js
libs/node-esbuild-js-esm/tsconfig.json libs/esbuild/node-esbuild-js-esm/tsconfig.json
libs/node-esbuild-ts-esm/build.js libs/esbuild/node-esbuild-ts-esm/build.js
libs/node-esbuild-ts-esm/package.json libs/esbuild/node-esbuild-ts-esm/package.json
libs/node-esbuild-ts-esm/src/index.ts libs/esbuild/node-esbuild-ts-esm/src/index.ts
libs/node-esbuild-ts-esm/tsconfig.json libs/esbuild/node-esbuild-ts-esm/tsconfig.json
libs/node-parcel-js-cjs/package.json libs/parcel/node-parcel-js-cjs/package.json
libs/node-parcel-js-cjs/src/index.js libs/parcel/node-parcel-js-cjs/src/index.js
libs/node-parcel-js-cjs/tsconfig.json libs/parcel/node-parcel-js-cjs/tsconfig.json
libs/node-parcel-js-esm/package.json libs/parcel/node-parcel-js-esm/package.json
libs/node-parcel-js-esm/src/index.js libs/parcel/node-parcel-js-esm/src/index.js
libs/node-parcel-js-esm/tsconfig.json libs/parcel/node-parcel-js-esm/tsconfig.json
libs/node-parcel-ts-esm/package.json libs/parcel/node-parcel-ts-esm/package.json
libs/node-parcel-ts-esm/src/index.ts libs/parcel/node-parcel-ts-esm/src/index.ts
libs/node-rollup-js-cjs/package.json libs/rollup/node-rollup-js-cjs/package.json
libs/node-rollup-js-cjs/rollup.config.js libs/rollup/node-rollup-js-cjs/rollup.config.js
libs/node-rollup-js-cjs/src/index.js libs/rollup/node-rollup-js-cjs/src/index.js
libs/node-rollup-js-cjs/tsconfig.json libs/rollup/node-rollup-js-cjs/tsconfig.json
libs/node-rollup-js-esm/package.json libs/rollup/node-rollup-js-esm/package.json
libs/node-rollup-js-esm/rollup.config.js libs/rollup/node-rollup-js-esm/rollup.config.js
libs/node-rollup-js-esm/src/index.js libs/rollup/node-rollup-js-esm/src/index.js
libs/node-rollup-ts-esm/package.json libs/rollup/node-rollup-ts-esm/package.json
libs/node-rollup-ts-esm/rollup.config.ts libs/rollup/node-rollup-ts-esm/rollup.config.ts
libs/node-rollup-ts-esm/src/index.ts libs/rollup/node-rollup-ts-esm/src/index.ts
libs/node-tsc-js-cjs/package.json libs/tsc/node-tsc-js-cjs/package.json
libs/node-tsc-js-cjs/src/index.js libs/tsc/node-tsc-js-cjs/src/index.js
libs/node-tsc-js-cjs/tsconfig.json libs/tsc/node-tsc-js-cjs/tsconfig.json
libs/node-tsc-js-esm/package.json libs/tsc/node-tsc-js-esm/package.json
libs/node-tsc-js-esm/src/index.js libs/tsc/node-tsc-js-esm/src/index.js
libs/node-tsc-js-esm/tsconfig.json libs/tsc/node-tsc-js-esm/tsconfig.json
libs/node-tsc-ts-esm/package.json libs/tsc/node-tsc-ts-esm/package.json
libs/node-tsc-ts-esm/src/index.ts libs/tsc/node-tsc-ts-esm/src/index.ts
libs/node-tsc-ts-esm/tsconfig.json libs/tsc/node-tsc-ts-esm/tsconfig.json
libs/node-tsup-ts-esm/package.json libs/tsup/node-tsup-ts-esm/package.json
libs/node-tsup-ts-esm/src/index.ts libs/tsup/node-tsup-ts-esm/src/index.ts
libs/node-vite-js-cjs/package.json libs/vite/node-vite-js-cjs/package.json
libs/node-vite-js-cjs/src/index.js libs/vite/node-vite-js-cjs/src/index.js
libs/node-vite-js-cjs/tsconfig.json libs/vite/node-vite-js-cjs/tsconfig.json
libs/node-vite-js-cjs/vite.config.mjs libs/vite/node-vite-js-cjs/vite.config.mjs
libs/node-vite-js-esm/package.json libs/vite/node-vite-js-esm/package.json
libs/node-vite-js-esm/src/index.js libs/vite/node-vite-js-esm/src/index.js
libs/node-vite-js-esm/tsconfig.json libs/vite/node-vite-js-esm/tsconfig.json
libs/node-vite-js-esm/vite.config.js libs/vite/node-vite-js-esm/vite.config.js
libs/node-vite-ts-esm/package.json libs/vite/node-vite-ts-esm/package.json
libs/node-vite-ts-esm/src/index.ts libs/vite/node-vite-ts-esm/src/index.ts
libs/node-vite-ts-esm/tsconfig.json libs/vite/node-vite-ts-esm/tsconfig.json
libs/node-vite-ts-esm/vite.config.ts libs/vite/node-vite-ts-esm/vite.config.ts
libs/node-webpack-js-cjs/package.json libs/webpack/node-webpack-js-cjs/package.json
libs/node-webpack-js-cjs/src/index.js libs/webpack/node-webpack-js-cjs/src/index.js
libs/node-webpack-js-cjs/tsconfig.json libs/webpack/node-webpack-js-cjs/tsconfig.json
libs/node-webpack-js-cjs/webpack.config.js libs/webpack/node-webpack-js-cjs/webpack.config.js
libs/node-webpack-js-esm/package.json libs/webpack/node-webpack-js-esm/package.json
libs/node-webpack-js-esm/src/index.js libs/webpack/node-webpack-js-esm/src/index.js
libs/node-webpack-js-esm/tsconfig.json libs/webpack/node-webpack-js-esm/tsconfig.json
libs/node-webpack-js-esm/webpack.config.cjs libs/webpack/node-webpack-js-esm/webpack.config.cjs
libs/node-webpack-ts-esm/package.json libs/webpack/node-webpack-ts-esm/package.json
libs/node-webpack-ts-esm/src/index.ts libs/webpack/node-webpack-ts-esm/src/index.ts
libs/node-webpack-ts-esm/tsconfig.json libs/webpack/node-webpack-ts-esm/tsconfig.json
libs/node-webpack-ts-esm/webpack.config.cjs libs/webpack/node-webpack-ts-esm/webpack.config.cjs
+32
libs/tsup/node-tsup-js-cjs/package.json
··· 1 + { 2 + "name": "node-tsup-js-esm", 3 + "version": "1.0.0", 4 + "private": true, 5 + "description": "Node, JavaScript (CJS), tsup", 6 + "keywords": [ 7 + "commonjs", 8 + "javascript", 9 + "node", 10 + "tsup" 11 + ], 12 + "files": [ 13 + "dist" 14 + ], 15 + "type": "commonjs", 16 + "types": "dist/index.d.ts", 17 + "exports": { 18 + ".": { 19 + "types": "./dist/index.d.ts", 20 + "import": "./dist/index.js" 21 + } 22 + }, 23 + "scripts": { 24 + "build": "tsup src/index.js --format cjs --dts --minify", 25 + "prepublint": "pnpm run build", 26 + "publint": "publint ." 27 + }, 28 + "devDependencies": { 29 + "tsup": "catalog:bundler", 30 + "typescript": "catalog:bundler" 31 + } 32 + }
+7
libs/tsup/node-tsup-js-cjs/src/index.js
··· 1 + /** 2 + * @param {string} name 3 + * @returns string 4 + */ 5 + exports.greet = function (name) { 6 + return `Hello ${name}` 7 + }
+12
libs/tsup/node-tsup-js-cjs/tsconfig.json
··· 1 + { 2 + "include": ["src"], 3 + "compilerOptions": { 4 + "allowJs": true, 5 + "declaration": true, 6 + "declarationMap": true, 7 + "module": "NodeNext", 8 + "moduleResolution": "NodeNext", 9 + "outDir": "dist", 10 + "sourceMap": true 11 + } 12 + }
+32
libs/tsup/node-tsup-js-esm/package.json
··· 1 + { 2 + "name": "node-tsup-js-esm", 3 + "version": "1.0.0", 4 + "private": true, 5 + "description": "Node, JavaScript (ESM), tsup", 6 + "keywords": [ 7 + "esm", 8 + "javascript", 9 + "node", 10 + "tsup" 11 + ], 12 + "files": [ 13 + "dist" 14 + ], 15 + "type": "module", 16 + "types": "dist/index.d.ts", 17 + "exports": { 18 + ".": { 19 + "types": "./dist/index.d.ts", 20 + "import": "./dist/index.js" 21 + } 22 + }, 23 + "scripts": { 24 + "build": "tsup src/index.js --format esm --dts --minify", 25 + "prepublint": "pnpm run build", 26 + "publint": "publint ." 27 + }, 28 + "devDependencies": { 29 + "tsup": "catalog:bundler", 30 + "typescript": "catalog:bundler" 31 + } 32 + }
+3
libs/tsup/node-tsup-js-esm/src/index.js
··· 1 + export function greet(name) { 2 + return `Hello ${name}` 3 + }
+10
libs/tsup/node-tsup-js-esm/tsconfig.json
··· 1 + { 2 + "include": ["src"], 3 + "compilerOptions": { 4 + "allowJs": true, 5 + "declaration": true, 6 + "emitDeclarationOnly": true, 7 + "outDir": "dist", 8 + "declarationMap": true 9 + } 10 + }
+7 -6
package.json
··· 8 8 "type": "module", 9 9 "scripts": { 10 10 "build": "pnpm run --r --if-present build", 11 - "build-esbuild": "pnpm --filter './libs/node-esbuild-*' build", 12 - "build-parcel": "pnpm --filter './libs/node-parcel-*' build", 13 - "build-rollup": "pnpm --filter './libs/node-rollup-*' build", 14 - "build-tsc": "pnpm --filter './libs/node-tsc-*' build", 15 - "build-vite": "pnpm --filter './libs/node-vite-*' build", 16 - "build-webpack": "pnpm --filter './libs/node-webpack-*' build", 11 + "build-esbuild": "pnpm --filter './libs/esbuild/*' build", 12 + "build-parcel": "pnpm --filter './libs/parcel/*' build", 13 + "build-rollup": "pnpm --filter './libs/rollup/*' build", 14 + "build-tsc": "pnpm --filter './libs/tsc/*' build", 15 + "build-tsup": "pnpm --filter './libs/tsup/*' build", 16 + "build-vite": "pnpm --filter './libs/vite/*' build", 17 + "build-webpack": "pnpm --filter './libs/webpack/*' build", 17 18 "fmt": "oxfmt", 18 19 "fmt-ci": "oxfmt --check", 19 20 "lint": "oxlint --type-aware --type-check",
+37 -19
pnpm-lock.yaml
··· 113 113 specifier: catalog:bundler 114 114 version: 5.9.3 115 115 116 - libs/node-esbuild-js-cjs: 116 + libs/esbuild/node-esbuild-js-cjs: 117 117 devDependencies: 118 118 esbuild: 119 119 specifier: catalog:bundler ··· 122 122 specifier: catalog:bundler 123 123 version: 5.9.3 124 124 125 - libs/node-esbuild-js-esm: 125 + libs/esbuild/node-esbuild-js-esm: 126 126 devDependencies: 127 127 esbuild: 128 128 specifier: catalog:bundler ··· 131 131 specifier: catalog:bundler 132 132 version: 5.9.3 133 133 134 - libs/node-esbuild-ts-esm: 134 + libs/esbuild/node-esbuild-ts-esm: 135 135 devDependencies: 136 136 esbuild: 137 137 specifier: catalog:bundler ··· 140 140 specifier: catalog:bundler 141 141 version: 5.9.3 142 142 143 - libs/node-parcel-js-cjs: 143 + libs/parcel/node-parcel-js-cjs: 144 144 devDependencies: 145 145 parcel: 146 146 specifier: catalog:bundler ··· 149 149 specifier: catalog:bundler 150 150 version: 5.9.3 151 151 152 - libs/node-parcel-js-esm: 152 + libs/parcel/node-parcel-js-esm: 153 153 devDependencies: 154 154 parcel: 155 155 specifier: catalog:bundler ··· 158 158 specifier: catalog:bundler 159 159 version: 5.9.3 160 160 161 - libs/node-parcel-ts-esm: 161 + libs/parcel/node-parcel-ts-esm: 162 162 devDependencies: 163 163 '@parcel/packager-ts': 164 164 specifier: catalog:bundler ··· 173 173 specifier: catalog:bundler 174 174 version: 5.9.3 175 175 176 - libs/node-rollup-js-cjs: 176 + libs/rollup/node-rollup-js-cjs: 177 177 devDependencies: 178 178 '@rollup/plugin-commonjs': 179 179 specifier: catalog:bundler ··· 188 188 specifier: catalog:bundler 189 189 version: 6.3.0(rollup@4.31.0)(typescript@5.9.3) 190 190 191 - libs/node-rollup-js-esm: 191 + libs/rollup/node-rollup-js-esm: 192 192 devDependencies: 193 193 rollup: 194 194 specifier: catalog:bundler ··· 203 203 specifier: catalog:bundler 204 204 version: 5.9.3 205 205 206 - libs/node-rollup-ts-esm: 206 + libs/rollup/node-rollup-ts-esm: 207 207 devDependencies: 208 208 '@rollup/plugin-typescript': 209 209 specifier: catalog:bundler ··· 221 221 specifier: catalog:bundler 222 222 version: 5.9.3 223 223 224 - libs/node-tsc-js-cjs: 224 + libs/tsc/node-tsc-js-cjs: 225 225 devDependencies: 226 226 typescript: 227 227 specifier: catalog:bundler 228 228 version: 5.9.3 229 229 230 - libs/node-tsc-js-esm: 230 + libs/tsc/node-tsc-js-esm: 231 231 devDependencies: 232 232 typescript: 233 233 specifier: catalog:bundler 234 234 version: 5.9.3 235 235 236 - libs/node-tsc-ts-esm: 236 + libs/tsc/node-tsc-ts-esm: 237 237 devDependencies: 238 238 typescript: 239 239 specifier: catalog:bundler 240 240 version: 5.9.3 241 241 242 - libs/node-tsup-ts-esm: 242 + libs/tsup/node-tsup-js-cjs: 243 243 devDependencies: 244 244 tsup: 245 245 specifier: catalog:bundler ··· 248 248 specifier: catalog:bundler 249 249 version: 5.9.3 250 250 251 - libs/node-vite-js-cjs: 251 + libs/tsup/node-tsup-js-esm: 252 + devDependencies: 253 + tsup: 254 + specifier: catalog:bundler 255 + version: 8.5.1(@microsoft/api-extractor@7.55.2(@types/node@25.0.3))(@swc/core@1.15.8(@swc/helpers@0.5.18))(jiti@2.6.1)(postcss@8.5.6)(typescript@5.9.3) 256 + typescript: 257 + specifier: catalog:bundler 258 + version: 5.9.3 259 + 260 + libs/tsup/node-tsup-ts-esm: 261 + devDependencies: 262 + tsup: 263 + specifier: catalog:bundler 264 + version: 8.5.1(@microsoft/api-extractor@7.55.2(@types/node@25.0.3))(@swc/core@1.15.8(@swc/helpers@0.5.18))(jiti@2.6.1)(postcss@8.5.6)(typescript@5.9.3) 265 + typescript: 266 + specifier: catalog:bundler 267 + version: 5.9.3 268 + 269 + libs/vite/node-vite-js-cjs: 252 270 devDependencies: 253 271 typescript: 254 272 specifier: catalog:bundler ··· 260 278 specifier: catalog:bundler 261 279 version: 4.5.4(@types/node@25.0.3)(rollup@4.54.0)(typescript@5.9.3)(vite@6.4.1(@types/node@25.0.3)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.1)) 262 280 263 - libs/node-vite-js-esm: 281 + libs/vite/node-vite-js-esm: 264 282 devDependencies: 265 283 '@types/node': 266 284 specifier: 'catalog:' ··· 275 293 specifier: catalog:bundler 276 294 version: 4.5.4(@types/node@22.19.3)(rollup@4.54.0)(typescript@5.9.3)(vite@6.4.1(@types/node@22.19.3)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.1)) 277 295 278 - libs/node-vite-ts-esm: 296 + libs/vite/node-vite-ts-esm: 279 297 devDependencies: 280 298 '@types/node': 281 299 specifier: 'catalog:' ··· 290 308 specifier: catalog:bundler 291 309 version: 4.5.4(@types/node@22.19.3)(rollup@4.54.0)(typescript@5.9.3)(vite@6.4.1(@types/node@22.19.3)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.1)) 292 310 293 - libs/node-webpack-js-cjs: 311 + libs/webpack/node-webpack-js-cjs: 294 312 devDependencies: 295 313 typescript: 296 314 specifier: catalog:bundler ··· 302 320 specifier: catalog:bundler 303 321 version: 6.0.1(webpack@5.104.1) 304 322 305 - libs/node-webpack-js-esm: 323 + libs/webpack/node-webpack-js-esm: 306 324 devDependencies: 307 325 typescript: 308 326 specifier: catalog:bundler ··· 314 332 specifier: catalog:bundler 315 333 version: 6.0.1(webpack@5.104.1) 316 334 317 - libs/node-webpack-ts-esm: 335 + libs/webpack/node-webpack-ts-esm: 318 336 devDependencies: 319 337 ts-loader: 320 338 specifier: catalog:bundler
+7 -1
pnpm-workspace.yaml
··· 1 1 packages: 2 - - libs/* 2 + - libs/esbuild/* 3 + - libs/parcel/* 4 + - libs/rollup/* 5 + - libs/tsc/* 6 + - libs/tsup/* 7 + - libs/vite/* 8 + - libs/webpack/* 3 9 4 10 catalog: 5 11 '@types/node': ^22.10.7