Bun vs pnpm
I'm seeing a lot of bun vs pnpm install speed comparisons but would like to provide some nuance: the absurd perf difference usually is a result of one tool running with a network API call overhead, while the other not.
bun install defaults to the behavior similar to pnpm's --prefer-offline flag, which skips hitting the npm API. To simulate the default behavior of pnpm, you have to use bun --force.
Here are some comparisons on my machine (network from Singapore) with different conditions:
bun (no cache, no lockfile): 5.4s
pnpm (no cache, no lockfile): 6.7s
bun (with cache, no lockfile): 30ms
pnpm (--prefer-offline, with cache, no lockfile): 587ms
bun (--force, with cache, no lockfile): 2.73s
pnpm (with cache, no lockfile): 5.9s
bun is still faster, but not so significant as some benchmark graphs may have led you to believe.
bun itself is amazing in many ways and deserve hype, but I'd love to see we compare apples to apples and not gloss over the details for engagement.
context for the benchmark: it's using the Vite + Vue + TypeScript boilerplate generated from
- Evan You (https://twitter.com/youyuxi/status/1701243745880932687)
π₯ Follow @javascriptdaily π₯
I'm seeing a lot of bun vs pnpm install speed comparisons but would like to provide some nuance: the absurd perf difference usually is a result of one tool running with a network API call overhead, while the other not.
bun install defaults to the behavior similar to pnpm's --prefer-offline flag, which skips hitting the npm API. To simulate the default behavior of pnpm, you have to use bun --force.
Here are some comparisons on my machine (network from Singapore) with different conditions:
bun (no cache, no lockfile): 5.4s
pnpm (no cache, no lockfile): 6.7s
bun (with cache, no lockfile): 30ms
pnpm (--prefer-offline, with cache, no lockfile): 587ms
bun (--force, with cache, no lockfile): 2.73s
pnpm (with cache, no lockfile): 5.9s
bun is still faster, but not so significant as some benchmark graphs may have led you to believe.
bun itself is amazing in many ways and deserve hype, but I'd love to see we compare apples to apples and not gloss over the details for engagement.
context for the benchmark: it's using the Vite + Vue + TypeScript boilerplate generated from
bun create vite
.- Evan You (https://twitter.com/youyuxi/status/1701243745880932687)
π₯ Follow @javascriptdaily π₯
X (formerly Twitter)
Evan You on X
I'm seeing a lot of bun vs pnpm install speed comparisons but would like to provide some nuance: the absurd perf difference usually is a result of one tool running with a network API call overhead, while the other not.
JavaScript Daily
Bun vs pnpm I'm seeing a lot of bun vs pnpm install speed comparisons but would like to provide some nuance: the absurd perf difference usually is a result of one tool running with a network API call overhead, while the other not. bun install defaults toβ¦
#Bun is disrupting JavaScript land . . .
- Bun.js vs Node.js
- Bun vs Deno
- How is Bun so fast?
π₯ Follow @javascriptdaily π₯
https://www.youtube.com/watch?v=dWqNgzZwVJQ
- Bun.js vs Node.js
- Bun vs Deno
- How is Bun so fast?
π₯ Follow @javascriptdaily π₯
https://www.youtube.com/watch?v=dWqNgzZwVJQ
YouTube
Bun is disrupting JavaScript land
Let's take a first look at Bun 1.0 - the worlds fastest JavaScript runtime. Find out how Bun compares to Node.js and Deno.
#webdevelopment #javascript #thecodereport
π₯ Level up AI code generation with DevGPT
Try it for free: https://devgpt.com/?utm_source=fireshipβ¦
#webdevelopment #javascript #thecodereport
π₯ Level up AI code generation with DevGPT
Try it for free: https://devgpt.com/?utm_source=fireshipβ¦
ECMAScript excitement π
Safari 17.0 ships support for #TC39 Stage 3 proposal Set Methods π
The seven new Set.prototype methods are:
πΈ intersection
πΈ union
πΈ difference
πΈ symmetricDifference
πΈ isSubsetOf
πΈ isSupersetOf
πΈ isDisjointFrom
π₯ Follow @javascriptdaily π₯
https://github.com/tc39/proposal-set-methods
Safari 17.0 ships support for #TC39 Stage 3 proposal Set Methods π
The seven new Set.prototype methods are:
πΈ intersection
πΈ union
πΈ difference
πΈ symmetricDifference
πΈ isSubsetOf
πΈ isSupersetOf
πΈ isDisjointFrom
π₯ Follow @javascriptdaily π₯
https://github.com/tc39/proposal-set-methods
GitHub
GitHub - tc39/proposal-set-methods: Proposal for new Set methods in JS
Proposal for new Set methods in JS. Contribute to tc39/proposal-set-methods development by creating an account on GitHub.
Next.js 13.5 Released !!
β 22% faster local server startup
β 29% faster HMR (Fast Refresh)
β 40% less memory usage
β Optimized package imports
β
β And over 438 bugs patched!
π₯ Follow @javascriptdaily π₯
https://nextjs.org/blog/next-13-5
β 22% faster local server startup
β 29% faster HMR (Fast Refresh)
β 40% less memory usage
β Optimized package imports
β
next/image
improvementsβ And over 438 bugs patched!
π₯ Follow @javascriptdaily π₯
https://nextjs.org/blog/next-13-5
nextjs.org
Next.js 13.5
Next.js 13.5 includes 22% faster local server startup, 29% faster HMR (Fast Refresh), 40% less memory usage, and more.
Meet hwy.dev, a new TypeScript metaframework built on top of hono.dev and htmx.org π
Quickstart:
Features:
β Server-rendered JSX / TSX
β Nested, file-based routing
β Remix-style actions and parallel loaders
β Async page components
β Rich Hono middleware ecosystem
β 100% type-safe
β Built-in critical CSS inlining
β Live browser refresh during dev
β And much more...
Quickstart:
npx create-hwy@latest
Features:
β Server-rendered JSX / TSX
β Nested, file-based routing
β Remix-style actions and parallel loaders
β Async page components
β Rich Hono middleware ecosystem
β 100% type-safe
β Built-in critical CSS inlining
β Live browser refresh during dev
β And much more...
JavaScript Daily
ECMAScript excitement π Safari 17.0 ships support for #TC39 Stage 3 proposal Set Methods π The seven new Set.prototype methods are: πΈ intersection πΈ union πΈ difference πΈ symmetricDifference πΈ isSubsetOf πΈ isSupersetOf πΈ isDisjointFrom π₯ Follow @javascriptdailyβ¦
#ECMAScript excitement π
Next week's #TC39 meeting is hosted by #TechAtBloomberg in Tokyo & has a packed agenda:
πΈ AsyncContext
πΈ Decimal
πΈ Import Attributes
πΈ Intl.MessageFormat
πΈ Negated
πΈ Pattern Matching
πΈ Structs
πΈ TDZ
πΈ Throw expressions
πΈ Type Annotations
https://github.com/tc39/agendas/blob/main/2023/09.md
Next week's #TC39 meeting is hosted by #TechAtBloomberg in Tokyo & has a packed agenda:
πΈ AsyncContext
πΈ Decimal
πΈ Import Attributes
πΈ Intl.MessageFormat
πΈ Negated
in
πΈ Pattern Matching
πΈ Structs
πΈ TDZ
πΈ Throw expressions
πΈ Type Annotations
https://github.com/tc39/agendas/blob/main/2023/09.md
GitHub
agendas/2023/09.md at main Β· tc39/agendas
TC39 meeting agendas. Contribute to tc39/agendas development by creating an account on GitHub.
JavaScript Daily
#ECMAScript excitement π Next week's #TC39 meeting is hosted by #TechAtBloomberg in Tokyo & has a packed agenda: πΈ AsyncContext πΈ Decimal πΈ Import Attributes πΈ Intl.MessageFormat πΈ Negated in πΈ Pattern Matching πΈ Structs πΈ TDZ πΈ Throw expressions πΈ Typeβ¦
#ECMAScript excitement π
These proposals moved this week #TC39 ππ
4οΈβ£ Resizable ArrayBuffer
2οΈβ£ RegExp.escape
2οΈβ£π ShadowRealm
1οΈβ£ Joint Iteration
1οΈβ£ Locale Extensions
1οΈβ£ Iterator Sequencing
1οΈβ£ Negated in
1οΈβ£ Stable Formatting
ποΈ FinalizationRegistry #cleanupSome
ποΈ Symbol.thenable
These proposals moved this week #TC39 ππ
4οΈβ£ Resizable ArrayBuffer
2οΈβ£ RegExp.escape
2οΈβ£π ShadowRealm
1οΈβ£ Joint Iteration
1οΈβ£ Locale Extensions
1οΈβ£ Iterator Sequencing
1οΈβ£ Negated in
1οΈβ£ Stable Formatting
ποΈ FinalizationRegistry #cleanupSome
ποΈ Symbol.thenable
Tauri 1.5.0 Released ππππ
- Bun support
- Notarytool
- Code signing improvements
- macOS frameworks
- Mixed content on Windows
https://beta.tauri.app/blog/tauri-1-5/
- Bun support
- Notarytool
- Code signing improvements
- macOS frameworks
- Mixed content on Windows
https://beta.tauri.app/blog/tauri-1-5/
Tauri
Announcing Tauri 1.5.0
The cross-platform app building toolkit
Exciting news - roadmap editor is live π₯³An interesting feature addition to https://roadmap.sh/
You can now create custom roadmaps, add content and resources, share them with your friends, teams or publicly.
This is a huge next step for us and we are so excited about what's coming next!
A good roadmap to bookmark: https://roadmap.sh/javascript
π₯ Follow @javascriptdaily π₯
https://x.com/kamrify/status/1708293162693767426
roadmap.sh
Developer Roadmaps - roadmap.sh
Community driven roadmaps, articles and guides for developers to grow in their career.
Announcing WinterJS
The most performant JavaScript Service Workers server thanks to Rust and SpiderMonkey.
WinterJS is a JavaScript Service Workers server written in Rust, that uses the SpiderMonkey runtime to execute JavaScript (the same runtime that Firefox uses). We chose to follow the WinterCG specification to aim for maximum compatibility with other services such as Cloudflare Workers, Deno Deploy and Vercel (hence the name WinterJS).
WinterJS is not only blazing fastβ’οΈ but can also be compiled to WebAssembly thanks to WASIX and thus also run fully with Wasmer.
π₯ Follow @javascriptdaily π₯
https://wasmer.io/posts/announcing-winterjs-service-workers
The most performant JavaScript Service Workers server thanks to Rust and SpiderMonkey.
WinterJS is a JavaScript Service Workers server written in Rust, that uses the SpiderMonkey runtime to execute JavaScript (the same runtime that Firefox uses). We chose to follow the WinterCG specification to aim for maximum compatibility with other services such as Cloudflare Workers, Deno Deploy and Vercel (hence the name WinterJS).
WinterJS is not only blazing fastβ’οΈ but can also be compiled to WebAssembly thanks to WASIX and thus also run fully with Wasmer.
π₯ Follow @javascriptdaily π₯
https://wasmer.io/posts/announcing-winterjs-service-workers
wintertc.org
WinterTC is an Ecma International Technical Committee aiming to provide a space for JS runtimes to collaborate on API interoperability.
JavaScript Daily
JS + art π₯ Follow @javascriptdaily π₯
#threejs
A quick example of how one can "synchronize" a 3d scene across multiple windows using three.js and localStorage
π₯ Follow @javascriptdaily π₯
Repo:
https://github.com/bgstaal/multipleWindow3dScene
A quick example of how one can "synchronize" a 3d scene across multiple windows using three.js and localStorage
π₯ Follow @javascriptdaily π₯
Repo:
https://github.com/bgstaal/multipleWindow3dScene
GitHub
GitHub - bgstaal/multipleWindow3dScene: A quick example of how one can "synchronize" a 3d scene across multiple windows using three.jsβ¦
A quick example of how one can "synchronize" a 3d scene across multiple windows using three.js and localStorage - bgstaal/multipleWindow3dScene
An interesting take on Frontend in 2023 and also some predictions in the article by @Jamie
https://buttondown.email/whatever_jamie/archive/frontend-predictions-for-2024
https://buttondown.email/whatever_jamie/archive/frontend-predictions-for-2024
Buttondown
Frontend predictions for 2024
It's been a remarkable year for frontend. We've seen a gold rush to capture β and invent β the server-side rendering (SSR) market; the advancing tentacles of...
This media is not supported in your browser
VIEW IN TELEGRAM
The rise and rise of #JavaScript
Credits: Data is beautiful (YouTube)
π₯ Follow @javascriptdaily π₯
Credits: Data is beautiful (YouTube)
π₯ Follow @javascriptdaily π₯
This media is not supported in your browser
VIEW IN TELEGRAM
Happy New Year to all the JS Daily subscribers.
Let's have a cheerful year in 2024
π₯ Follow @javascriptdaily π₯
Let's have a cheerful year in 2024
π₯ Follow @javascriptdaily π₯
A quick and fun guide to setup a template of
#SolidJS + #TailwindCSS + #Tauri
and develop for desktop and mobile simultaneously...
π€―π€―π€―
π₯ Follow @javascriptdaily π₯
https://www.youtube.com/watch?v=W539_PP4Y98
#SolidJS + #TailwindCSS + #Tauri
and develop for desktop and mobile simultaneously...
π€―π€―π€―
π₯ Follow @javascriptdaily π₯
https://www.youtube.com/watch?v=W539_PP4Y98
YouTube
Tauri and Solid make mobile and desktop apps
Tauri v2 is almost stable, combining Tauri and Solid we can now ship native apps in MacOS, Windows, Linux, Android, and iOS. One codebase!
Plus, all together at once with Hot Module Replacement π€―
Chapters:
========
00:00 - Tauri v2
00:30 - What's Quantumβ¦
Plus, all together at once with Hot Module Replacement π€―
Chapters:
========
00:00 - Tauri v2
00:30 - What's Quantumβ¦
π’ LLRT (Low Latency Runtime) is a new JS runtime from Amazon β¨
β‘ Designed for fast Serverless startup time
π¦ Written in Rust
π¨ Embeds the QuickJS engine written in C
π‘ Lightweight (~3MB)
π§ͺ Experimental!
https://github.com/awslabs/llrt
β‘ Designed for fast Serverless startup time
π¦ Written in Rust
π¨ Embeds the QuickJS engine written in C
π‘ Lightweight (~3MB)
π§ͺ Experimental!
https://github.com/awslabs/llrt
GitHub
GitHub - awslabs/llrt: LLRT (Low Latency Runtime) is an experimental, lightweight JavaScript runtime designed to address the growingβ¦
LLRT (Low Latency Runtime) is an experimental, lightweight JavaScript runtime designed to address the growing demand for fast and efficient Serverless applications. - awslabs/llrt
JSR - the JavaScript Registry - is now available in public beta.
π οΈ TypeScript first, ESM only
π Works across runtimes (Node, Deno, Bun, workerd and more) and alongside npm/yarn/pnpm
π€ Free and open source
Read about it on the Deno blog:
https://deno.com/blog/jsr_open_beta
π οΈ TypeScript first, ESM only
π Works across runtimes (Node, Deno, Bun, workerd and more) and alongside npm/yarn/pnpm
π€ Free and open source
Read about it on the Deno blog:
https://deno.com/blog/jsr_open_beta
Deno Blog
Introducing JSR - the JavaScript Registry
The JavaScript Registry (JSR) is a TypeScript-first, ESM-only module registry designed for the entire JavaScript ecosystem. Use JSR modules from Deno and npm-based projects. JSR is free and open source. Available today in public beta.
π₯π TypeScript Revolution: Compiler Rewritten in Go for MIND-BLOWING Performance! π²
Get ready for some EARTH-SHATTERING EXCITEMENT! π The TypeScript team has just dropped a bombshell: they've completely rewritten the compiler in Go, and the results are nothing short of ASTOUNDING! π€―
π Here are the jaw-dropping highlights:
πΉ *10x FASTER TYPE-CHECKING* π₯: Say goodbye to slow compilation times and hello to lightning-fast type-checking!
πΉ *SIGNIFICANTLY LESS MEMORY USAGE* π: The new compiler is leaner and meaner, using far less memory to get the job done.
What does this mean for you? π€
- *HUGELY IMPROVED AUTHORING & COMPILATION EXPERIENCE* π: With the new compiler, you'll enjoy a seamless and blazing-fast TypeScript experience like never before!
Read the official announcement: https://devblogs.microsoft.com/typescript/typescript-native-port/
____
Stay tuned to @javascriptdaily for more updates, and get ready to experience the future of TypeScript! ππ
Get ready for some EARTH-SHATTERING EXCITEMENT! π The TypeScript team has just dropped a bombshell: they've completely rewritten the compiler in Go, and the results are nothing short of ASTOUNDING! π€―
π Here are the jaw-dropping highlights:
πΉ *10x FASTER TYPE-CHECKING* π₯: Say goodbye to slow compilation times and hello to lightning-fast type-checking!
πΉ *SIGNIFICANTLY LESS MEMORY USAGE* π: The new compiler is leaner and meaner, using far less memory to get the job done.
What does this mean for you? π€
- *HUGELY IMPROVED AUTHORING & COMPILATION EXPERIENCE* π: With the new compiler, you'll enjoy a seamless and blazing-fast TypeScript experience like never before!
Read the official announcement: https://devblogs.microsoft.com/typescript/typescript-native-port/
____
Stay tuned to @javascriptdaily for more updates, and get ready to experience the future of TypeScript! ππ
Microsoft News
A 10x Faster TypeScript
Embarking on a native port of the existing TypeScript compiler and toolset to achieve a 10x performance speed-up.