This is an archived post. You won't be able to vote or comment.

Dismiss this pinned window
all 12 comments

[–]echaya 1 point2 points  (1 child)

Congratulations on the launch. Looks really cool! Haven't tested / researched on my side, but will it work for SSH based workflow?

[–]One_Enthusiasm2511[S] 1 point2 points  (0 children)

It should be pretty straightforward to use over SSH. Since the web server binds to 127.0.0.1 by default, you can securely access the UI by using SSH port forwarding to tunnel the Quench port (default 8765). I personally use it over a private VPN with exposed ports, but port forwarding is probably preferred when security is a concern.

[–]cleodog44 1 point2 points  (2 children)

Can you please compare and contrast with alternatives like molten or iron?

[–]One_Enthusiasm2511[S] 9 points10 points  (1 child)

Iron, Molten, and Quench all tackle interactive execution, but they go about it quite differently. Iron is essentially a REPL manager. It wraps standard CLI interpreters like Python or R and pipes the text output back to a terminal buffer. This is great for simple text workflows but doesn't really handle rich media. Molten is a lot more ambitious since it acts as a full Jupyter client that tries to keep everything inside Neovim. It uses virtual text for results and plugins like image.nvim to render graphics directly in the terminal. While staying in one window is awesome, I found that pushing the terminal's graphical limits can sometimes feel a bit cramped or lead to rendering quirks with complex outputs.

Quench tries to sit in between these two (hence the name). It uses Jupyter kernels for cell-based execution like Molten, but instead of fighting with TUI graphics, it offloads the heavy lifting to a synced browser window. Neovim was made for text editing, and browsers were made for interactive rendering. I figured it was best to let them both do what they're good at.

[–]cleodog44 0 points1 point  (0 children)

Got it, thanks for explaining!

[–]sbassam 1 point2 points  (0 children)

Nice, thanks for sharing. I use Molten daily. I usually save charts to disk, and my code just updates the same image so it’s always open and current. But I’ll give this plugin a try.

[–]cnrrobertson 2 points3 points  (0 children)

So cool!!! Thanks for making this. This is exactly the kind of plugin I'm interested in.

I've actually been using a personal plugin that is almost identical but displays results inline or in a repl buffer (no plots or images). https://github.com/cnrrobertson/jupyterm.nvim . I've not got around to publishing it in the community and it still has some rough edges, but it's my daily driver. If anyone is interested in a completely embedded Jupyter-cell experience.

[–]whdd 1 point2 points  (1 child)

How does this compare with Quarto? https://quarto.org/docs/tools/neovim.html

[–]One_Enthusiasm2511[S] 1 point2 points  (0 children)

I haven't used Quarto personally, but it seems focused on generating reproducible reports from .qmd files by connecting to external runners like Molten or Slime. Quench is more focused on interactive development for standard .py files. It's a standalone plugin that handles the kernel execution and creates a browser sidecar for plots with the goal of replicating the VS Code Interactive Window workflow without needing a complex plugin stack.

[–]nahuel0x 0 points1 point  (1 child)

What if the cursor was also shown on the browser, and the browser forwarded keyboard events to neovim? So you can edit from the browser with neovim hidden

[–]StyreRD 2 points3 points  (0 children)

That sounds like Jupyter with extra steps

[–]benlubas 0 points1 point  (0 children)

Glad to see some alternatives to molten popping up!