esm.sh
A nobuild content delivery network(CDN) for modern web development.
https://esm.sh
- Thank you Anthony!!!!
- 💖 This April, we have forwarded our Open Collective fund to support maintainers: @goede.dev @zernonia.bsky.social Recurring to projects: @esm.sh @pnpm.io @cyberalien.dev Join us to show appreciation for our dependencies and help them be sustainable! opencollective.com/antfu/update...
- 💚
- 💖 In March, we have forwarded our Open Collective fund to support maintainers: @thealexlichter.com @43081j.com Recurring to projects: @esm.sh @pnpm.io @cyberalien.dev Join us to show appreciation to our dependencies and help them be sustainable! opencollective.com/antfu/update...
- esm.sh was down for about 1 hour caused by DNS resolving via IPV6. Now it's back!
- did you know: esm.sh can transform tsx/vue/svelte to JS via <esm\.sh/https\://example.com/src/app.tsx> - tsx: esm.sh/https://ije.github.io/esmshx-demo/react/main.tsx - vue: esm.sh/https://ije.github.io/esmshx-demo/vue/App.vue - svelte: esm.sh/https://ije.github.io/esmshx-demo/svelte/App.svelte
- Thank you for your support! 🫡 💚
- 💖 These two months, January and February, we have forwarded our Open Collective fund to support maintainers: @sxzz.dev @johnsoncodehk.bsky.social @brc-dd.dev; Recurring to projects: @esm.sh @pnpm.io @cyberalien.dev Join us to show appreciation to our dependencies and help them be sustainable!
- [Not loaded yet]
- nice, btw you can also use github.com/esm-dev/cjs-... for cjs named exports resolving
- esm.sh now uses `deno.json(c)` for module resolving when importing modules from Github, which allows you to import a WIP package without publishing it to @jsr.io Example: esm.sh/gh/dsherret/dax@6aed9b0 PR: github.com/esm-dev/esm.sh/pull/1085
- [Not loaded yet]
- oh, so fast! i will look into it. thanks 🙏
- Check esm.sh/gh/gnlow/pla...
- esm.sh + JSR 😱️
- esm.sh v136 has been deployed with - builtin @jsr.io (h/t @lcas.dev ) and pkg.pk.new (h/t @aslemammad.bsky.social @amirsakhravi.bsky.social) registries. - more stable package version resolving - use @pi0.io's github.com/unjs/unenv - and more ↪ github.com/esm-dev/esm....
- and with @antfu.me's support, esm.sh now experimentally transforms `.vue` and `.svelte` on the fly, for example esm.sh/gh/phosphor-...
- idea: get package with version closest to a provided timestamp or date
- [Not loaded yet]
-
View full threadyou can use `?deps` to specify the dep version, for example "lib_a?deps=lib_c@^2.0.0", you also can use `?external` with import maps to fix he duplicated issue: { "lib_a": "https://esm.sh/lib_a?external=lib_c" "lib_b": "https://esm.sh/lib_b?external=lib_c" "lib_c": "..." }
- however i have to admit using `?deps` and "?external" is a bit annoying, this is why we are working on the better sub-modules bundling algorithm and semantic versioning support. and a new CLI tool and vscode extension like jspm generator is going to be released in next publish.
- [Not loaded yet]
- esm.sh does bundle sub-modules of a package if the `exports` field is not found, but it doesn't bundle deps by deafult. i think the duplicate issue is about semantic versioning, i.e. lib_a imports lib_c@^1.0.0, lib_b imports lib_c@^2.0.0, in this case, lib_c is duplicated
- [Not loaded yet]
- You can disable the default bundling behavior with the `?no-bundle` option. The default bundling introduced by esm.sh is to reduce http requests. currenlty, we are working on split mode (by analyzing the package dependency tree, we can find out which modules should be bundled)
- @esm.sh/cjs-module-lexer has been improved to support more edge cases, and now it provides native build that allows esm.sh server to drop nodejs requirement (before we use it to load cjs-module-lexer.wasm) github.com/esm-dev/cjs-...
- We just added a built-in npm package manager in golang to replace pnpm, the ci shows that the test time has dropped from 12:15 to 4:30 (~2.7x faster) github.com/esm-dev/esm....
- ⚠️ npm is down, urls like esm.sh/preact (without specified version) are returning 404. hope the npm team fix it soon 🙏
- it's back!
- We just hit 3200 🌟 on Github, thank you all for following 💙
- 💖
- 💖 For this November, we redistributed our funds to @slev.life, Color.js @lea.verou.me, MSW @kettanaito.com, @esm.sh, @pnpm.bsky.social, Iconify @cyberalien.dev for their amazing work on Open Source! 🙏 Thanks to all the sponsors for making this possible! opencollective.com/antfu/update...
- Thank you @brc-dd.dev for sponsoring esm.sh on Github 💚
- 🎉 @esm.sh x @pkg.pr.new is here y'all! imagine if pkg.pr.new had a cdn to load the preview releases in the browser directly! well, you can just try that with esm.sh!
- 🚧 esm.sh v137 roadmap: Compile esm.sh to a local CLI that builds esm on your computer! h/t @b0rk.jvns.ca @simonwillison.net github.com/esm-dev/esm....
- i'm a no-build fan 🤩
- importing a frontend Javascript library without a build system jvns.ca/blog/2024/11...
- importing a frontend Javascript library without a build system jvns.ca/blog/2024/11...
- [Not loaded yet]
- 💚
- we did it! it WORKS now on the beta branch! e.g.: next.esm.sh/gh/phosphor-...
- BIG thanks to @antfu.me's Open Source Fund for the sponsor to esm.sh💚 (With this support esm.sh is going to transpile @vuejs and @sveltejs SFC on NPM or URL) - 💚: https://opencollective.com/esm/contributions/804091 - wip PR: https://github.com/esm-dev/esm.sh/pull/886
- esm.sh ⚡️ pkg.pr.new
- 👀 imagine importing pkg.pr.new stuff on fly! github.com/esm-dev/esm....
- [Not loaded yet]
- hi, sorry to hear that, would you like file an issue on github?
- oh, i found it! will look into it! github.com/esm-dev/esm....
- Open Sourced the fun @vite.dev plugin I have been using to cut build times and reduce the bundle size of files I deploy to CDN on all my personal projects using @esm.sh ofc, wouldn't recommend for PROD apps but its been handy so far - www.npmjs.com/package/vite...
- [Not loaded yet]
- - server versioning like `^18.3.0` makes integrity checking hard to be implemented correctly, unless you fixed all the depency versions, we still dig into it! we deeply care about this! - 64% requests of esm.sh are served as http3 that should imporve the load perfermance
- [Not loaded yet]
- lol, means esm.sh cdn costs up 🔥
- coooool!
- update: import `.md` as a Vue component, and HMR is supported! the markdown is transpile by esm.sh builtin markdown renderer(powered by github.com/yuin/goldmark in Golang), and works in react/preact/svelte apps too
- BIG thanks to @antfu.me's Open Source Fund for the sponsor to esm.sh💚 (With this support esm.sh is going to transpile @vuejs and @sveltejs SFC on NPM or URL) - 💚: https://opencollective.com/esm/contributions/804091 - wip PR: https://github.com/esm-dev/esm.sh/pull/886
- wip screenshots: _no-build_ vue app with unocss.
- BIG thanks to @antfu.me's Open Source Fund for the sponsor to esm.sh💚 (With this support esm.sh is going to transpile @vuejs and @sveltejs SFC on NPM or URL) - 💚: https://opencollective.com/esm/contributions/804091 - wip PR: https://github.com/esm-dev/esm.sh/pull/886
- BIG thanks to @antfu.me's Open Source Fund for the sponsor to esm.sh💚 (With this support esm.sh is going to transpile @vuejs and @sveltejs SFC on NPM or URL) - 💚: https://opencollective.com/esm/contributions/804091 - wip PR: https://github.com/esm-dev/esm.sh/pull/886
- [Not loaded yet]
- so coooool!
- [Not loaded yet]
- same as web client
- [Not loaded yet]
- you are right, the initial load may take seconds to build, but after build it's cached forever!
- 🦋