Skip to content

Commit 03e5cbb

Browse files
committed
Add how it works.
1 parent 54c81f3 commit 03e5cbb

8 files changed

Lines changed: 208 additions & 97 deletions

File tree

pages/_page.xnode

Lines changed: 1 addition & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -19,14 +19,6 @@
1919
</head>
2020

2121
<body class="#{attributes[:class]}">
22-
<header>
23-
<div class="masthead">
24-
<p class="eyebrow">Terminal-native transport for interactive protocols</p>
25-
<h1>HTTY</h1>
26-
<p class="tagline">Specifications, libraries, and tools for moving HTTP/2 and related session traffic over terminal side channels.</p>
27-
</div>
28-
</header>
29-
3022
<div id="page">
3123
<utopia:content/>
3224
</div>
@@ -35,4 +27,4 @@
3527
<p>HTTY is part of the Socketry ecosystem.</p>
3628
</footer>
3729
</body>
38-
</html>
30+
</html>

pages/welcome/index.xnode

Lines changed: 31 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,30 @@
11
<content:page class="front ecosystem-page">
22
<section class="hero">
3-
<content:heading>HTTY's ecosystem is taking shape.</content:heading>
4-
<p class="lead">Specifications, libraries, and tools for building terminal-native applications that can surface rich HTTP/2-backed views from ordinary command-line sessions.</p>
5-
<p>Today, the HTTY stack spans protocol framing, HTTP/2 adaptation layers, JavaScript and Ruby implementations, and Chimera: a browser-like terminal client for attached application surfaces.</p>
3+
<content:heading>Give terminal apps room to breathe.</content:heading>
4+
<p class="lead">HTTY lets command-line programs keep their TTY superpowers while exposing web-quality UI for layout, media, interaction, and application state.</p>
5+
<p>Chimera is the desktop terminal emulator for that stack: it runs ordinary commands, detects HTTY bootstrap, and opens attached browser surfaces beside the terminal session.</p>
66
<div class="download-actions">
77
<a class="download-button primary" href="https://github.com/socketry/chimera/releases/latest/download/Chimera-macOS-arm64.dmg">Download macOS</a>
88
<a class="download-button" href="https://github.com/socketry/chimera/releases/latest/download/Chimera-Linux-x64.AppImage">Download Linux</a>
99
<a class="download-button" href="https://github.com/socketry/chimera/releases/latest/download/Chimera-Windows-x64.exe">Download Windows</a>
10-
<a class="download-link" href="https://github.com/socketry/chimera/releases/latest">All releases</a>
10+
<a class="download-link" href="https://github.com/socketry/chimera/releases/latest">Release notes</a>
1111
</div>
12+
<figure class="demo-carousel" aria-label="Chimera launching the platformer demo from the terminal">
13+
<img src="/_screenshots/platformer-1.png" alt="Chimera terminal before starting the platformer demo" />
14+
<img src="/_screenshots/platformer-2.png" alt="Chimera terminal running the platformer demo command" />
15+
<img src="/_screenshots/platformer-3.png" alt="Chimera opening an attached HTTY browser surface" />
16+
<img src="/_screenshots/platformer-4.png" alt="Platformer demo running inside a Chimera browser tab" />
17+
</figure>
18+
</section>
19+
20+
<section class="how-it-works">
21+
<div class="how-it-works-copy">
22+
<h2>How it works</h2>
23+
<p>HTTY starts with a small terminal control sequence. The command emits a DCS bootstrap message, and Chimera uses it to recognize that the process wants to attach an application surface.</p>
24+
<p>After that bootstrap, the session switches to raw terminal I/O. Chimera and the command exchange plaintext HTTP/2 (<code>h2c</code>) over the same byte stream, while Chimera presents responses as local browser tabs.</p>
25+
<p>The HTTP/2 session is not wrapped in DCS packets. DCS is only the bootstrap; the application traffic flows over the terminal byte stream.</p>
26+
</div>
27+
<img class="how-it-works-diagram" src="/_static/how-it-works.svg" alt="Diagram showing DCS bootstrap followed by raw terminal I/O carrying h2c between a command, Chimera, and a browser surface" />
1228
</section>
1329

1430
<section class="feature-grid">
@@ -31,57 +47,39 @@
3147
</div>
3248

3349
<div class="feature-card">
34-
<h2>Interactive Client</h2>
50+
<h2>Terminal Emulator</h2>
3551
<p><a href="https://github.com/socketry/chimera"><strong>Chimera</strong></a> is the browser-like terminal environment that turns HTTY packets into attached surfaces and tabbed session views.</p>
3652
<p>It demonstrates the user experience HTTY is designed to unlock.</p>
3753
</div>
3854
</section>
3955

40-
<section class="roadmap">
41-
<h2>Ecosystem Roadmap</h2>
42-
<ul>
43-
<li>Publish a compact overview of the HTTY transport model and packet types.</li>
44-
<li>Document the layering between <a href="https://github.com/socketry/protocol-htty">protocol-htty</a>, <a href="https://github.com/socketry/protocol-http2">protocol-http2</a>, <a href="https://github.com/socketry/async-http">async-http</a>, and <a href="https://github.com/socketry/async-htty">async-htty</a>.</li>
45-
<li>Link reference implementations and runnable examples for Ruby and JavaScript.</li>
46-
<li>Describe client behavior and attached-surface semantics as Chimera evolves.</li>
47-
</ul>
48-
</section>
49-
5056
<section class="repositories">
51-
<h2>Current Projects</h2>
57+
<h2>Related Projects</h2>
5258
<div class="repository-list">
59+
<a class="repository-card" href="https://github.com/socketry/chimera">
60+
<strong>chimera</strong>
61+
<span>Desktop client for surfacing HTTY-backed application views.</span>
62+
</a>
63+
<a class="repository-card" href="https://github.com/socketry/htty-js">
64+
<strong>htty-js</strong>
65+
<span>JavaScript transport, session, and server implementation.</span>
66+
</a>
5367
<a class="repository-card" href="https://github.com/socketry/protocol-htty">
5468
<strong>protocol-htty</strong>
5569
<span>DCS bootstrap specification for attached terminal sessions.</span>
5670
</a>
57-
<a class="repository-card" href="https://github.com/socketry/protocol-htty#readme">
71+
<a class="repository-card" href="https://socketry.github.io/protocol-htty/guides/specification/index">
5872
<strong>HTTY Specification</strong>
5973
<span>The protocol documentation and packet model.</span>
6074
</a>
6175
<a class="repository-card" href="https://github.com/socketry/protocol-http2">
6276
<strong>protocol-http2</strong>
6377
<span>HTTP/2 wire semantics carried as h2c after HTTY bootstrap.</span>
6478
</a>
65-
<a class="repository-card" href="https://github.com/socketry/async-http">
66-
<strong>async-http</strong>
67-
<span>Async HTTP client and server primitives for Ruby applications.</span>
68-
</a>
6979
<a class="repository-card" href="https://github.com/socketry/async-htty">
7080
<strong>async-htty</strong>
7181
<span>Async integration for serving and consuming HTTY sessions.</span>
7282
</a>
73-
<a class="repository-card" href="https://github.com/socketry/htty-js">
74-
<strong>htty-js</strong>
75-
<span>JavaScript transport, session, and server implementation.</span>
76-
</a>
77-
<a class="repository-card" href="https://github.com/socketry/chimera">
78-
<strong>chimera</strong>
79-
<span>Desktop client for surfacing HTTY-backed application views.</span>
80-
</a>
81-
<a class="repository-card" href="https://github.com/socketry/chimera/releases/latest">
82-
<strong>Chimera Releases</strong>
83-
<span>Latest desktop downloads and release notes.</span>
84-
</a>
8583
</div>
8684
</section>
8785
</content:page>
348 KB
Loading
373 KB
Loading
381 KB
Loading
603 KB
Loading

public/_static/how-it-works.svg

Lines changed: 59 additions & 0 deletions
Loading

0 commit comments

Comments
 (0)