by mitchellh
1 subcomments
- Holy shit Kyle. I had no idea you were working on this. This is amazing. Your patch is also very instructive on what you need me to do for you to make this more reasonable.
I'm guessing that performance of this relative to xterm right now isn't... the best, mainly because the way you're grabbing the viewport seems expensive. I'm curious though if you did any benchmarks?
One thing you probably really want to expose is the new RenderState API: https://github.com/ghostty-org/ghostty/blob/main/src/termina... You're doing per row line grabbing currently which is probably pretty slow. The RenderState API is stateful and produces the state necessary to create a high-performance, delta update renderer. It's what our production GPU renderers are now built on (but the API itself is compatible with any kind of renderer). It'd be better for you.
After all that, I'm very curious even at this rudimentary level what the performance on various benchmarks look like compared to xterm.js.
Excellent work!
- Curious to know what makes this "a proper VT100 implementation in the browser, not a JavaScript approximation of one" -- isn't Ghostty also an approximation, just implemented in a different language? Seems unnecessarily pejorative to me.
- Ghostty is so great. Cross-platform but native on Mac and Linux. Core written in a cool random language, showing that you can have well-behaved Mac apps that aren’t just pure Swift / Objective C. Same great design no doubt helps here.
by syrusakbary
4 subcomments
- I've set up an online demo using Wasmer for local execution, so everyone can try easily! (try typing `cowsay hello`):
https://ghostty-web.wasmer.app/
How to try it locally:
npx @ghostty-web/demo@next # The preferred way
# OR
wasmer run wasmer/ghostty-web
-> Go to http://localhost:8080/
Source code: https://github.com/wasmerio/webassembly.sh (updated from xterm into ghostty-web without any issue!)
- I built a macOS app that uses Ghostty and fzy to fuzzy search over Apple Note titles. It is working quite well for me.
https://github.com/emadda/hot-notes/
by someguy101010
1 subcomments
- nice one kyle! you could add https://github.com/wasmerio/webassembly.sh and have a fully featured in browser shell with support for installing packages!
by VikingCoder
1 subcomments
- So, could someone now make a Visual Studio Code (and specifically code-server) that has ghostty-web as the Terminal?
by nineteen999
2 subcomments
- Always love seeing new vt100 implementations! Here's my current pet one running inside Unreal5:
https://imgur.com/a/2vsGS0G
Vibe coding with Claude in a UE5 Editor tab is a lot of fun ... especially once you give it access to the Remote Control API in UE5, it can control an avatar, take screenshots. All very helpful for debugging 3d games: ### Photo Log
| Filename | Description |
|----------|-------------|
| ClaudePOV_20251202_134349_2.png | First 720p test - VT100 terminal visible |
| ClaudePOV_20251202_143259_4.png | Inside hyperspace tunnel - green rings |
| ClaudePOV_20251202_143325_5.png | Tunnel with pink/purple shift |
| ClaudePOV_20251202_143432_6.png | BX-2100 silhouette, purple nebula |
| ClaudePOV_20251202_143655_7.png | BX-2100 close-up, cockpit visible |
Love Claude. It can build me a Hyperspace GLSL shader in Unreal 5, but it can't get the column headers right in it's screenshot list.
by thoughtfulchris
2 subcomments
- This is super cool! I'm close to releasing a project to make Ink work in the browser for building cross-platform terminal apps. (Ink is what Claude Code / Gemeni CLI use for rendering.)
Currently it uses Xterm.js - but I'll have to try swapping Xterm out for ghostty-web!
- I'm just here to say coder is great! We love it. Thanks @kylecarbs and the team.
- Not able to enter text on mobile
From "WebAssembly (WASM) arch support for the Linux kernel" (2025)
https://news.ycombinator.com/item?id=45784329 :
> JupyterLite still lacks a Terminal e.g. with BusyBox Ash in WASM, with a file system integrated with the Jupyter-xeus kernel file system.
> This [joelseverin/linux-wasm] appears to load much more quickly than other Linux and I think even just bash in WASM demos I've seen.
by jordemort
1 subcomments
- Hm, might try hacking this into https://tsl0922.github.io/ttyd/
by gregsadetsky
1 subcomments
- Hey all, you can try ghostty-web here:
https://ghostty.ondis.co/
Stellar work, Kyle! Cheers
- I made something similar that lets you run TUI applications inside other terminals via ghostty-vt, to implement things like TMUX in opentui
It will be used to render ANSI inside opencode
https://github.com/remorses/ghostty-opentui
- I have no understanding of any of this except that Ghostty is an alternative to iTerm2. Can someone do a ELI5 for the uninitiated?
by jumploops
1 subcomments
- Oh man this is awesome. Recently integrated xterm.js on a new project and was frustrated with the limitations. Great work!
by indemnity
3 subcomments
- Oh damn, this is awesome.
I wonder if https://github.com/zed-industries/zed/discussions/18129 is still accurate. Would love to be able to use Ghostty as my Zed terminal.
by solotronics
0 subcomment
- I always thought it would be interesting in backend systems to catch a certain exceptions and auto-generate a link to a shell. Given the proper authentication is implemented would this be a good tool to achieve that "remote debug" shell?
- Neat. Would be cute to see this in VSCode to replace the terminal there...
- can you do a hosted demo with jslinux (or similar) as backend?
https://bellard.org/jslinux/
by quantummagic
1 subcomments
- Is there any way for Ghostty to grab all keystrokes? It's a bit of a drag to type ctrl-w inside of Vim, and have the entire browser-tab close ;-)
- This is great. I've been using code-server to embed VSCode into the browser and been missing the terminal functionality. Excited to try this out.
- Does this version support custom GPU shaders? I have been looking for a command-line with cool-retro-term aesthetics that can run in the browser for a while.
- I have been looking for this for a while — thank you for making it! I’m gonna explore how I can deploy my BubbleTea TUI’s with it.
- This is fantastic. Under MIT even! Thank You!
by royaltjames
0 subcomment
- I love ghostty and I love this
- omg! Seriously, wow. That was quick! Only just heard that Hashimoto libbed out his terminal the other day and remarked about how smart that was... And it made this possible
- Someone finally figured out how to make it work under Linux!
by shortlived
1 subcomments
- Do we have Windows support yet?
by ivanjermakov
1 subcomments
- No hosted demo?
by sigmonsays
1 subcomments
- but why?