The compiler for esm.sh playground written in Rust, powered by swc and lightningcss.
import init, { transform } from "https://esm.sh/esm-compiler";
await init();
const appTsx = `
import { useState } from "react"
export default App() {
const [msg] = useState<string>("world")
return <h1>Hello {msg}!</h1>
}
`
const importMap = {
imports: {
"@jsxImportSource": "https://esm.sh/react@18"
"react": "https://esm.sh/react@18",
}
}
const ret = transform("./App.tsx", appTsx, { importMap })
console.log(ret.code)
You will need rust 1.60+ and wasm-pack.
wasm-pack build --target web
cargo test --all