Skip to content

Commit dc59c79

Browse files
authored
chore: update readme (#65)
1 parent 105ca28 commit dc59c79

File tree

2 files changed

+18
-42
lines changed

2 files changed

+18
-42
lines changed

README.md

Lines changed: 13 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -2,40 +2,35 @@
22

33
![ghostty](https://github.com/user-attachments/assets/aceee7eb-d57b-4d89-ac3d-ee1885d0187a)
44

5-
`ghostty-web` is a fully-featured web terminal built on [Ghostty's](https://github.com/ghostty-org/ghostty)
6-
terminal emulation core compiled to WebAssembly. By leveraging Ghostty's production-tested VT100 parser
7-
and state machine, `ghostty-web` delivers fast, robust terminal emulation in the browser. For many use
8-
cases it is a drop-in replacement for xterm.js.
5+
`ghostty-web` is a web terminal developed for [mux](https://github.com/coder/mux) using
6+
[mux](https://github.com/coder/mux) that leverages [Ghostty's](https://github.com/ghostty-org/ghostty)
7+
terminal emulation core via WebAssembly. Because it leans on Ghostty to handle the complexity of terminal
8+
emulation, `ghostty-web` can deliver fast, robust terminal emulation in the browser. The intent is
9+
for this project to become a drop-in replacement for xterm.js. If it's not obvious, this repo is currently
10+
under heavy development.
911

1012
## Live Demo
1113

12-
Try ghostty-web instantly with:
14+
Try ghostty-web yourself with:
1315

1416
```bash
15-
npx @ghostty-web/demo
17+
npx @ghostty-web/demo@next
1618
```
1719

18-
This starts a local demo server with a real shell session. Works on Linux, macOS, and Windows.
20+
This starts a local demo server with a real shell session. The demo server works best when run from Linux, but you can also try
21+
it on macOS. Windows is not supported (yet). Chrome is the only supported browser at the moment.
1922

2023
<details>
2124
<summary>Development setup (building from source)</summary>
2225

23-
> [!NOTE]
2426
> Requires Zig and Bun, see [Development](#development)
2527
2628
```bash
2729
git clone https://github.com/coder/ghostty-web
2830
cd ghostty-web
2931
bun install
3032
bun run build # Builds the WASM module and library
31-
32-
# Terminal 1: Start PTY Server
33-
cd demo
34-
bun install
35-
bun run dev
36-
37-
# Terminal 2: Start web server
38-
bun run dev # http://localhost:8000/demo/
33+
bun run demo:dev # http://localhost:8000/demo/
3934
```
4035

4136
</details>
@@ -99,12 +94,6 @@ machine, and screen buffer) to WebAssembly, providing:
9994
- Zero runtime dependencies (just ghostty-web + bundled WASM)
10095
- Parser/state machine from Ghostty
10196

102-
## Why ghostty-web?
103-
104-
- **Don't reimplement VT100 parsing** – it's thousands of edge cases refined over years. Instead, leverage Ghostty's battle-tested terminal emulator that's proven by thousands of daily users.
105-
- **Drop-in xterm.js replacement** – for many use cases, ghostty-web can replace xterm.js with minimal code changes
106-
- **Modern & maintained** – Built on Ghostty, an actively developed modern terminal emulator, ensuring continued improvements and bug fixes.
107-
10897
## Usage Examples
10998

11099
### Basic Terminal
@@ -146,8 +135,8 @@ term.onData((data) => {
146135

147136
### Building WASM
148137

149-
`ghostty-web` builds a custom WASM binary from Ghostty's source with patches to expose additional
150-
browser-specific functionality
138+
`ghostty-web` builds a custom WASM binary from Ghostty's source with a patch to expose additional
139+
functionality
151140

152141
```bash
153142
bun run build

demo/README.md

Lines changed: 5 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -5,46 +5,33 @@ Cross-platform demo server for [ghostty-web](https://github.com/coder/ghostty-we
55
## Quick Start
66

77
```bash
8-
npx @ghostty-web/demo
8+
npx @ghostty-web/demo@next
99
```
1010

1111
This starts a local web server with a fully functional terminal connected to your shell.
12-
Works on **Linux**, **macOS**, and **Windows**.
12+
Works on **Linux** and **macOS** (no Windows support yet).
1313

1414
## What it does
1515

1616
- Starts an HTTP server on port 8080 (configurable via `PORT` env var)
1717
- Starts a WebSocket server on port 3001 for PTY communication
18-
- Opens a real shell session (bash, zsh, cmd.exe, or PowerShell)
18+
- Opens a real shell session (bash, zsh, etc.)
1919
- Provides full PTY support (colors, cursor positioning, resize, etc.)
2020

2121
## Usage
2222

2323
```bash
2424
# Default (port 8080)
25-
npx @ghostty-web/demo
25+
npx @ghostty-web/demo@next
2626

2727
# Custom port
28-
PORT=3000 npx @ghostty-web/demo
28+
PORT=3000 npx @ghostty-web/demo@next
2929
```
3030

3131
Then open http://localhost:8080 in your browser.
3232

33-
## Features
34-
35-
- 🖥️ Real shell sessions with full PTY support
36-
- 🎨 True color (24-bit) and 256 color support
37-
- ⌨️ Full keyboard support including special keys
38-
- 📐 Dynamic terminal resizing
39-
- 🔄 Auto-reconnection on disconnect
40-
- 🌐 Cross-platform (Linux, macOS, Windows)
41-
4233
## Security Warning
4334

4435
⚠️ **This server provides full shell access.**
4536

4637
Only use for local development and demos. Do not expose to untrusted networks.
47-
48-
## License
49-
50-
MIT

0 commit comments

Comments
 (0)