← All tools

statico/nethack-tiles-client

Popularity 65 Updated Development & Build

🧙 Play NetHack on the public servers with graphical tiles — a desktop client for macOS, Windows and Linux

githubauto-collected

Installation

A directly usable install command is not verified yet. Check the project documentation or releases.

NetHack Tiles Client

<img height="400" alt="CleanShot 2026-08-01 at 16 41 21@2x" src="https://github.com/user-attachments/assets/4bc250ee-b408-48ff-bea0-abd8d487fa27" /

[!NOTE] This was vibe coded, entirely and unapologetically. Nearly all of it — the Rust, the TypeScript, the tests, the app icon, this README — was written by Claude Code running Opus 5, with a human steering rather than typing. Read it with that in mind.

A cross-platform desktop client for playing NetHack on the public servers (nethack.alt.org, Hardfought) with graphical tiles. It connects over SSH, reads the vttiledata escape codes the servers already emit, and paints the vanilla 16×16 tileset over the map. Games run on the server, so scores, dumplogs and ttyrecs are unaffected.

It will also run a NetHack installed on this machine, in a pseudo-terminal — see Playing locally.

Tauri 2 (OS webview, no bundled browser) + React/TypeScript frontend, Rust backend.

Installing

On macOS, with Homebrew:

brew install --cask statico/tap/nethack-tiles-client

That taps statico/homebrew-tap the first time and puts the app in /Applications. Later:

brew upgrade --cask nethack-tiles-client   # get the newest release
brew uninstall --cask nethack-tiles-client # remove the app

An uninstall keeps your profiles. Add --zap to delete them as well. Saved passwords are in the login keychain, so --zap does not remove those. A state-log folder is where you put it, and nothing removes it for you.

Otherwise take the .dmg, .msi, .AppImage or .deb from the releases page. The macOS build is signed with a Developer ID and notarised, so it opens like any other app. The Windows .msi is unsigned, so SmartScreen wants "More info ▸ Run anyway".

To build it yourself, see Running.

Requirements

  • Rust (stable) and Node 18+
  • A game account on the server you want to play on
  • Two lines in your .nethackrc on the server (edit it through the

dgamelaunch menu or the server's web editor):

  OPTIONS=vt_tiledata
  OPTIONS=windowtype:tty