generated at
esm.sh
概要
esm.shnpmパッケージを配信するCDNです
X-TypeScript-Typesをサポートしており、Denoからnpmパッケージを利用したいときに便利です
Denoからnpmパッケージを使いたい場合、 npm: URLによる読み込みも可能です (Denoのnpmパッケージサポート)
npm: URLでは読み込めないnpmパッケージでも、esm.sh経由であれば読み込めることがあります
Node.jsの組み込みパッケージ( fs , child_process など)の読み込みをdeno_std/nodeへの読み込みに置換してくれるため、Node.jsを想定したパッケージでも動かせる可能性があります

クエリパラメータ
パッケージを読み込む際に、クエリパラメータを指定することで、パッケージ読み込み時の挙動などを変更できます。
?external
Import mapsとの併用が想定されています (v87からサポート)
json
{ "imports": { "preact": "https://esm.sh/preact@10.10.0", "preact-render-to-string": "https://esm.sh/preact-render-to-string@5.2.0?external=preact", } }
?alias
あるパッケージの依存を別パッケージへの読み込みに置き換えられます
json
{ "imports": { "preact": "https://esm.sh/preact@10.10.0", "preact/": "https://esm.sh/preact@10.10.0/", "swr": "https://esm.sh/swr@1.3.0?alias=react:preact/compat&external=preact/compat" } }

?deno-std
deno_stdのバージョンを指定できます (v89からサポート)
例) ?deno-std=0.149.0
読み込まれるdeno_std/nodeのバージョンを指定したい場合に使用することが想定されています。

?no-dts
X-TypeScript-Typesの設定が無効化されます。

?module
.wasm ファイルをWebAssembly.Moduleオブジェクトとして import できます。(v115からサポート)

jsrパッケージ
v136から正式にjsrパッケージの読み込みがサポートされています

CLI
実験的ですが、v90でCLIが実装されています
Trexと同様に、Import maps(import_map.json)の管理に利用することができます
shell
$ deno install -A -n esm -f https://esm.sh $ esm add react $ esm upgrade react $ esm remove react
追記) Deno v2での様々な機能の追加に伴い、esm.shのCLIはv136で非推奨化されました

関連ページ