A pure-Ruby X11 terminal
Details
- External ID
- 48545068
- Source
- HN
- Company
- —
- Product
- A pure-Ruby X11 terminal
- Website domain
- github.com
- Launched
- June 15, 2026
- Cohort
- —
- Upvotes
- 10
- Upvotes percentile
- 0.5935792349726776
- Tags
- —
- Fetched at
- Sept. 7, 2026, 9:26 p.m.
- Updated at
- Sept. 7, 2026, 9:26 p.m.
Description
I use this as my regular xterm replacement... Why? Because I can.It's pure-Ruby down to the font-renderer, and the X11-bindings.(I also run a Ruby WM, a Ruby editor, file manager, and more, so this is just par for the course of my descent into madness)It supports double-width and double-height text, unicode (but double-width characters may currently be rescaled down), layering fonts, special rendering of box-drawing characters (to ensure they seamlessly scale and connect, and has reasonably complete vt-100/vt-102 emulation. The whole thing is available as a Rubygem and comes with an ANSI text backend, so you can run your terminal in your terminal. The bulk was written manually, but the last few days I had Claude write a test harness to shake out a bunch of bugs, and start refactoring and cleaning up the code base (it's still full of warts).
Enrichment
- Theme
- typography and unicode text tools
- Vertical
- Horizontal
- Function
- Dev tools
- Audience
- Developer
- AI stance
- Not AI
- Project type
- Hobby / open-source project
- Normalized one-liner
- x11 terminal written in ruby
- Manually corrected
- False
Could you build this?
No Writing an X11 terminal emulator from scratch in pure Ruby requires implementing low-level X11 wire protocols, ANSI/VT escape sequence parsing, and a custom font rasterizer, which requires specialized systems programming and graphics knowledge.
What it would actually take: This requires implementing the raw X11 binary wire protocol over Unix domain sockets, a complete state machine for VT100/xterm escape sequences, and a custom glyph rasterizer or TrueType parser from scratch without C-bindings. Beyond protocol handling, it involves managing pseudo-terminals (pty), terminal line disciplines, and X11 graphics contexts entirely in pure Ruby. The core challenge is deep knowledge of decades-old terminal and windowing specifications, where AI assistants consistently hallucinate binary protocol structures and corner-case escape sequences.
Discussion
10 comments analyzed.
Concerns raised: Difficulty compiling Ruby and getting from working to usable/fast, GC implementation is a sore spot, needs rewriting in Ruby, Project has languished for years with limited time to develop further
Feature requests: Rewrite garbage collector in Ruby, Expand Regexp support beyond current beginnings, Improve bignum support
Competitors
Other products that read as similar to this one — 51 launches clear the similarity bar, closest 8 shown.
Attention rank: #22 of 52 (itself plus its competitors, highest first — normalized so YC and Product Hunt are compared fairly).
Launched 212 days after the earliest competitor.
- Ferroterm · hn · 2026-07-05 · 6 upvotes · similarity 0.43
- Xenia · hn · 2026-01-18 · 74 upvotes · similarity 0.42
- Horizon · hn · 2026-03-17 · 84 upvotes · similarity 0.38
- alifbo · github · 2026-09-13 · 7 upvotes · similarity 0.38
- Unicode cursive font generator that checks cross-platform compatibility · hn · 2026-01-01 · 11 upvotes · similarity 0.37
- Beautiful Markdown rendering in your terminal · hn · 2026-09-11 · 7 upvotes · similarity 0.37
- Boo · hn · 2026-06-11 · 95 upvotes · similarity 0.37
- Make cursed fonts like Times New Bastard · hn · 2026-09-23 · 857 upvotes · similarity 0.36
Other launches for this product
- No other launches for this product.
Same idea, different domain
Nobody's really built a dev tools tool for Sales yet.