-
Notifications
You must be signed in to change notification settings - Fork 391
Description
It'd be neat to run Quarto in the browser, I'm wondering if this is a design goal or perhaps if it's explicitly not. I just found some notes I wrote up a few months ago about various quarto-cli deps:
Deno
It's a goal of Deno to be browser-compatible.
- any reference to the global Deno namespace would need not to be used?
- maybe something like denopack is supposed to be used?
esbuild is probably the way to go here? And factoring stuff out?
Pandoc
There's an Asterius-built pandoc executable available at https://asterius.netlify.app/demo/pandoc/pandoc.html but I haven't found the code that builds it.
There's an old GHCJS-compiled pandoc too.
It's not clear that either of these keep the lua functionality intact? There's been lots of back and forth trying to get the C bits out of pandoc, but currently there are C dependencies. The lua filters seem to be integral to Quarto. There are definitely Emscripten builds of Lua out there, but the integration might be tricky.
ESBuild
Is this maybe a runtime dependency? there's a wasm version available at esbuild-wasm on npm, see https://esbuild.github.io/getting-started/#wasm
SASS
There's a version of SASS compiled to JavaScript on npm.
R
I heard from Pyodide folks that discussions of compiling R to the browser petered out because there was so much Fortran involved. It seems like R isn't required to run to run Quarto at all, but I want to check because when commands like edit: I misunderstood what quarto serve error on my if I don't have Shiny R library installed, suggesting there's some R in there somewhere.quarto serve does, it's explicitly for Shiny apps.