minification-benchmarks
pkg
minification-benchmarks | pkg | |
---|---|---|
15 | 91 | |
1,208 | 24,099 | |
- | - | |
9.1 | 6.3 | |
4 days ago | 4 months ago | |
TypeScript | JavaScript | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
minification-benchmarks
-
Extremely reducing the size of NPM package
Minifiers are used to reduce the size of the bundle. They can remove unused code, shorten expressions, and so on. And Now there are already several popular minifiers, and they continue to appear: more familiar ones - written in JavaScript - Terser and UglifyJS, even Babel has its own version of the minifier, there are also more modern SWC (written in Rust) and ESBuild (written in Go), and a bunch of other lesser-known minifiers. And I recommend you to look at this repository. It contains up-to-date test results of various popular minifiers.
-
Minify and Gzip (2022)
This minify/gzip size effect is a well known quirk to developers of javascript minifiers. The minifier's symbol mangling algorithm often has a more pronounced effect than does advanced AST optimization.
This website has real life data on the matter for popular libraries:
* https://github.com/privatenumber/minification-benchmarks
Compare the trophies indicating smallest size for Minified versus Minzipped (gzip). Generally the smallest minified size yields the smallest minified+gzip size, but there are some notable anomolies outside the range of statistical noise. It is not practical for a javascript minifier to take a compression algorithm into account - it would blow up the minify timings exponentially.
-
Bun v0.6.0 β Bun's new JavaScript bundler and minifier
It would be helpful to see how Bun's minifier compares to the others with popular libraries:
https://github.com/privatenumber/minification-benchmarks
-
JS Uglify/Minify Gems?
JavaScript
-
Overview of the next-gen frontend dev tools
There are many minifiers such as terser and uglify. But, because minifying also require to parse the JS, it is actually possible to use esbuild and SWC to minify the code. Here's a benchmark of the main minifiers.
-
Overworld 1.0 is Live
Here's a comparison showing the major players with comparable stats at first glance. https://github.com/privatenumber/minification-benchmarks
-
Is anyone using Google Closure Compiler? And why not?
https://esbuild.github.io/ https://github.com/privatenumber/minification-benchmarks
- Parcel v2
- I never need webpack or babel anymore
-
π§’ Stefan's Web Weekly #6
privatenumber/minification-benchmarks β JS minification benchmarks: babel-minify, esbuild, terser, uglify-js
pkg
-
We are under DDoS attack and we do nothing
I don't remember the details, and cannot find my notes on vercel/pkg. But looking at https://github.com/vercel/pkg right now I see the project has been deprecated in favour of single-executable-applications
-
Tailwind CSS v4.0.0 Alpha
> Standalone CLI β we havenβt worked on a standalone CLI for the new engine yet, but will absolutely have it before the v4.0 release.
This part is the most exciting to me. Given the rest of the release announcement, I'm assuming this means that it'll be built in Rust rather than embed Node. While I'm not a Rust zealot of anything, I'm very partial to not embedding Node. Particularly when it depends on using Vercel's now-abandoned pkg[1] tool.`
[1] https://github.com/vercel/pkg
-
Things I've learned about building CLI tools in Python
The npm package called "pkg" seems to be the standard for packaging NodeJS applications
https://www.npmjs.com/package/pkg
Unfortunately you also need to bundle all your code into a single file for it to work, but you can use any bundler (webpack, parcel, etc) you want at least
-
Deno 1.35: A fast and convenient way to build web servers
Nodejs support for "single executable applications" is getting there - this issue below is preventing wider adoption at the moment:
"The single executable application feature currently only supports running a single embedded script using the CommonJS module system."
https://nodejs.org/api/single-executable-applications.html
Should be an awesome game changer for node.js when the feature gets rounded out.
Also check out vercel's `pkg`: https://github.com/vercel/pkg/issues/1291
-
Can I include Node inside my project?
Yes, you can. Check out pkg for a fun option, which can package up your project and Node.js into a single executable.
-
[Question] How does Node-RED compile a flow?
Further, you could experiment with the pkg tool that allows you to package up Node JS, your source, and your dependencies into one single executable for easy distribution.
- Bun v0.6.0 β Bun's new JavaScript bundler and minifier
- How to restrict the access to an on premise node server?
-
Tips for reducing Docker image size
package the app using https://github.com/vercel/pkg and use a smaller base image like alpine, busybox or even scratch (if possible)
-
Making standalone exe
Check this thread: https://github.com/vercel/pkg/issues/1685
What are some alternatives?
vite - Next generation frontend tooling. It's fast!
nexe - π create a single executable out of your node.js apps
esbuild - An extremely fast bundler for the web
ncc - Compile a Node.js project into a single file. Supports TypeScript, binary addons, dynamic requires.
terser - π JavaScript parser, mangler and compressor toolkit for ES6+
reverse-engineering - List of awesome reverse engineering resources
mocha-esbuild - Run tests with mocha compiled by esbuild
webpack - A bundler for javascript and friends. Packs many modules into a few bundled assets. Code Splitting allows for loading parts of the application on demand. Through "loaders", modules can be CommonJs, AMD, ES6 modules, CSS, Images, JSON, Coffeescript, LESS, ... and your custom stuff.
fjb - fast javascript bundler :package:
bytenode - A minimalist bytecode compiler for Node.js
source-map-explorer - Analyze and debug space usage through source maps
oclif - CLI for generating, building, and releasing oclif CLIs. Built by Salesforce.