crazykickboxer

02 / Terminal / Windows native

AmberSSH

Overview

A terminal made of particles

AmberSSH is an SSH terminal in which every glyph on screen is a cluster of 32 to 256 GPU particles, more than eight million of them in a full 4K window, simulated and drawn on Direct3D 12 at 120 frames per second.

It is a native Windows build in C++20. The particle system is the display, not a decoration on top of one: text arrives over SSH, Telnet, Rlogin, a raw socket or a serial port, is laid out into cells, and the cells are what the particles settle into. Seventeen motion styles decide how they get there; eight interface skins decide what they look like once they do.

Around the terminal sit the tools you would expect from a working client: an SFTP browser, a command palette, asciinema recording, and an OSC 133 command journal that knows where each command started and ended. A Three.js web version also exists.

Specification

Tech spec

AmberSSH technical specification
PlatformWindows, native
LanguageC++20
APIDirect3D 12
Particles8M+ live
Per glyph32 – 256 particles
Target120 fps at 3840x2160
Motion styles17
Interface skins8
ProtocolsSSH, Telnet, Rlogin, raw, serial
File transferSFTP browser
Recordingasciinema
Shell integrationOSC 133 command journal
AlsoCommand palette; Three.js web version

Features

What it does

  • Eight million particles, one window. The full 4K grid is resident on the GPU. Simulation and rendering both run there; the CPU only feeds text.
  • 120 fps at 4K. Frame time is budgeted for a 120 Hz display at 3840x2160 on current hardware, with the terminal still responsive while the particles move.
  • 17 motion styles. How glyphs assemble, dissolve and scroll is selectable at runtime, from a plain settle to full physical dispersal.
  • 8 interface skins. Amber phosphor is the default; the rest cover the usual CRT and modern looks without changing the layout.
  • 5 protocols. SSH, Telnet, Rlogin, raw TCP and serial, all through the same session model.
  • SFTP browser. Remote file browsing and transfer beside the active session.
  • Command palette. Every action reachable from the keyboard, searchable.
  • asciinema recording. Sessions record to the standard cast format for playback anywhere.
  • OSC 133 command journal. Shell integration marks prompt, command and output boundaries, so you can jump between commands and re-run or copy any of them.
  • Web version. A Three.js build runs the same particle idea in the browser.

Media

Gallery

Links