esbuild
PostCSS
Our great sponsors
- InfluxDB - Access the most powerful time series database as a service
- SonarQube - Static code analysis for 29 languages.
- ONLYOFFICE ONLYOFFICE Docs — document collaboration in your environment
- CodiumAI - TestGPT | Generating meaningful tests for busy devs
esbuild | PostCSS | |
---|---|---|
300 | 78 | |
35,360 | 27,497 | |
- | 0.5% | |
9.7 | 9.3 | |
10 days ago | 15 days ago | |
Go | TypeScript | |
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.
esbuild
-
[AskJS] Advantages of Rollup over other bundlers for creating libraries?
Rollup is highly configurable via plugins. It also supports a wide range of transpilation targets. However, it's written in JavaScript (well, TypeScript) so there's a ceiling on how fast it can go. esbuild and swc are orders-of-magnitude faster than Rollup.
-
JavaScript import maps are now supported cross-browser
Note that `deno bundle` is deprecated. You can almost replace it with esbuild but it currently lacks builtin support for import maps:
deno run --allow-all https://deno.land/x/[email protected]/mod.js --bundle app.js --outfile=bundle.js. # errors, see: https://github.com/evanw/esbuild/issues/2230
-
xtsz - a TS / JS file runner with support for HTTP/S imports
Want to import a package / file conveniently from esm.sh or unpkg or directly from a GitHub repo for a one-off script (for example). To do this I created a custom ESBuild plugin to handle HTTP imports - that worked for ,js files. To support running both ESM and CJS, I use tsx.
-
Let’s create a Node CLI for generating files from templates!
esbuild – is an easy-to-configure bundler,
-
Building a modern gRPC-powered microservice using Node.js, Typescript, and Connect
As we iterate on the definition, we are going to want a better developer experience for rebuilding the package on changes. Typically, for a “library” or “utility” style package, I’d reach for either unbuild’s stub concept or use esbuild/tsup/rollup to implement a more traditional watch/rebuild, but in this case, I’m watching a proto file that lives outsides of the source, which breaks assumptions of those tools.
-
Svelte frontend vs HTMX and hyperscript
I use ESBuild (https://esbuild.github.io/) as a library for my almost pure Go toolchain, and it covers my requirements for almost 2 years now. ESBuild is the Go tool used in Vite, an incredible tool that I stopped using when I discovered that ESBuild covered all my needs.
-
Buildless workflow through import maps (featuring Lit, Shoelace and more)
As we can see, we have two external dependencies and one internal tool. In the modern way of packaging our application, we would be of course required to package this project using some bundler like ESBuild or Rollup. But with import maps, we can instead utilize CDN's to deliver our packages and completely eliminate the bundling step.
-
How are you building React applications? It's time to move on from Create React App
"Why?" you might ask. Vite is built on top of esbuild, a Go-based bundler for the web that is 10-100x faster than other bundlers such as webpack. Vite is also platform-agnostic, so you can learn the tool and use it for many applications.
-
The Technology Behind “Moyuk”: Create, Run and Share Tools with TypeScript on Your Browser
Internally, esbuild is used. Esbuild has a plugin system, and I created custom plugins to resolve import statements like npm: and https://.
-
Benchmarking the AWS SDK
The other option I want to highlight is packaging the project using something like Webpack or esbuild. JS Bundlers transpile all of your separate files and classes (along with all node_modules) into one single file, a practice originally developed to reduce package size for frontend applications. This helps improve the cold start time in Lambda, as unimported files can be pruned and the entire handler becomes one file.
PostCSS
-
How to setup a simple static website using Svelte (with login)
Usually, one of the first things I do on creating a new web app is to throw a UI library in to help style components. There are several UI libraries that can be used by Svelte, but in this case I went with daisyUI because it's a fairly popular UI library which includes tailwind. To install daisyUI, you first need to install tailwind. There's a few different ways to do this (such as this guide), but the easiest way I've found is the following command, which also adds PostCSS and AutoPrefixer:
-
Vanilla+PostCSS as an Alternative to SCSS
Vanilla CSS has taken a similar path with ambitious working drafts, better browser support, and PostCSS to fill the gap for user agents lagging behind. So why is Sass/SCSS still so popular? Maybe we go so used to it that we might have forgotten what problems it was meant to solve in the first place.
-
Web 3.0 frontend stacks in 2023
UI, CSS : tailwindcss + PostCSS + Radix UI + UI components by shadcn
-
When Vite ignores your Browserslist configuration
Actually, Vite doesn’t support Browserslist at all: the only reason it “seems” to work well with CSS is because Vite uses PostCSS, which itself natively uses Browserslist. We could say that Vite supports Browserslist by proxy, for CSS.
-
How do I learn modern web development?
postCSS
-
Using tailwind v3 with lit elements
We will be using PostCSS to process our source files' CSS.
-
Simple reactions in HTML + CSS
But... this is still hacky! Can we do better? Yes, we can, using PostCSS to transform @when rules to the css we have seen above. I could not find any PostCSS plugin for this, so I created one that is really quick and dirty, but works for this simple use case. You can find it here.
-
Advice for experienced dev taking on front-end role?
Tooling takes away alot of headaches and saves yourself from "being clever" (stupid). Most front-end tooling can be run out of the nodeJS runtime, so even if your stack isn't JS oriented, it's still worth running node. The obvious shoutouts: Vite, eslint, stylelint, postCSS, browserslist. Playwright is somethin else you can give a look at if your scope of work is large enough.
-
Setup TailwindCSS, postcss and esbuild on Rails 7
As we write more features we would need to organize our css files, write additional styles or wrap any tailwind components up using tailwinds @apply helper. Currently, we can’t import other css files into the main application.tailwind.css file because our node-powered TailwindCSS is provided by cssbundling-rails, which by default doesn’t allow it. Luckily we can fix it, thanks to postcss.
First, we need to install postcss and other plugins via yarn. From terminal:
What are some alternatives?
swc - Rust-based platform for the Web
vite - Next generation frontend tooling. It's fast!
Rollup - Next-generation ES module bundler
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.
parcel - The zero configuration build tool for the web. 📦🚀
terser - 🗜 JavaScript parser, mangler and compressor toolkit for ES6+
tsup - The simplest and fastest way to bundle your TypeScript libraries.
ts-node - TypeScript execution and REPL for node.js
Tailwind CSS - A utility-first CSS framework for rapid UI development.
import-maps - How to control the behavior of JavaScript imports
styled-components - Visual primitives for the component age. Use the best bits of ES6 and CSS to style your apps without stress 💅
emotion - 👩🎤 CSS-in-JS library designed for high performance style composition