pako
esbuild
Our great sponsors
pako | esbuild | |
---|---|---|
6 | 322 | |
5,295 | 37,276 | |
0.8% | - | |
0.6 | 9.5 | |
about 1 year ago | 15 days ago | |
JavaScript | Go | |
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.
pako
-
Gzip library for client-side compression
try pako
-
Storing State in the URL
A trick I've used on top of serializing JSON in the URL is in-browser compression with a library like pako [0] (zlib in JavaScript). This helps you get more data in before you reach the browser limit for URL length.
[0] https://github.com/nodeca/pako
-
Browsers can do that?
Another operation that is sometimes desired is to take several files and give the user a compressed file. There are actually a surprisingly large amount (jszip, pako) of client side options here, but my favorite so far when it comes to speed, size and working with .zip has been fflate. But if you'd like to work with other formats, there are also libraries to decompress 7-Zip, RAR & TAR.
-
Major updates for bundle.js.org v0.0.3
I used monaco-editor for the code-editor, esbuild and rollup as bundler and treeshaker respectively, pako as a js port of the zlib and gzip libraries, pretty-bytes to convert the gzip size to human readable values, and countapi-js to keep track of the number of page visits, in a private and secure way.
-
Interacting with usernotes outside of toolbox
Just wanted to let you know the most current version of pako does not work with the example on the wiki page. It errors out with "unknown compression format". I had to use the version found in Toolbox lib folder in order to get the example from the wiki page to work.
-
298 App Lab apps in a Steam-like filter system
Uncompressing should be straightforward with pako.js.
esbuild
-
Use Notion as your CMS along with Next.js
During my search for deploying Lambdas via GitHub actions, I came across a tutorial that utilized ncc for converting TypeScript and bundling. While ncc is effective, I discovered esbuild, which proved to be significantly faster and perfectly suited to my requirements.
-
⏰ It’s time to talk about Import Map, Micro Frontend, and Nx Monorepo
The advent of esbuild, the native support for ES Modules in browsers, the widespread adoption of import map, the emergence of tools like Native Federation, and the Nx ecosystem all combine to forge a flexible and well-maintained Micro Frontend Architecture.
-
JS Toolbox 2024: Bundlers and Test Frameworks
EsBuild is a relatively new, blazing-fast JavaScript bundler and minifier. It stands out for its high performance, significantly speeding up the build process in development pipelines.
-
Build a Vite 5 backend integration with Flask
Unlike Webpack, the Vite DevServer only compiles files when they are requested. It leverages ES module imports, which allow JS files to import other files without needing to bundle them together during development. When one file changes, only that file needs to be re-compiled, and the rest can remain unchanged. Project files are compiled with Rollup.js. Third-party dependencies in node_modules are pre-compiled using the ultra-fast esbuild bundler for maximum speed, and they are cached until the dependency version changes. Vite also provides a client script for hot module reloading.
-
SSR React in Go
Use esbuild to build the React code into a form executable on both the server and client sides.
-
Effortless Function as a Service: A Simple Guide to Implementing it with Query
The functions will bundle using esbuild. For that, it is required to install esbuild globally:
-
How to run TypeScript natively in Node.js with TSX
TSX is the newest and most improved version of our ts-node, using ESBuild to transpile TS files to JS very quickly. The most interesting part is that TSX was developed to be a complete replacement for Node, so you can actually use TSX as a TypeScript REPL, if you install it globally with npm i -g tsx, just run tsx in your terminal and you can write TSX natively. But what's even cooler is that you can load TSX for all TypeScript files using --loader tsx when you run your file. For example, let's say we have this file called index.ts:
-
Quick Summary of Angular 17
esbuild plus Vite is out of developer preview and enabled by default, yielding 67%, 87%, 80% speed improvements for build time, hybrid build time and hybrid serve time respectively.
-
In-Depth guide for TypeScript Library
Bundling with esbuild
-
11 Ways to Optimize Your Website
Besides Webpack, there are many other popular web bundlers available, such as Parcel, Esbuild, Rollup, and more. They all have their own unique features and strengths, and you should make your decision based on the needs and requirements of your specific project. Please refer to their official websites for details.
What are some alternatives?
JSZip - Create, read and edit .zip files with Javascript
swc - Rust-based platform for the Web
fast-zlib - Shared context synchronous compression
vite - Next generation frontend tooling. It's fast!
decompress-zip - Module that decompresses zip files
Rollup - Next-generation ES module bundler
fflate - High performance (de)compression in an 8kB package
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.
Archiver - a streaming interface for archive generation
parcel - The zero configuration build tool for the web. 📦🚀
decompress - Extracting archives made easy
terser - 🗜 JavaScript parser, mangler and compressor toolkit for ES6+