# Blink Shell

> Terminal for iPhone and iPad built around Mosh and SSH, with hterm rendering, extensive hardware keyboard support and a small local shell.

Stars: 7.0k · Language: Swift/Objective-C · License: GPL-3.0 · Platforms: iOS · Config: GUI

Features: configurable

- Repository: https://github.com/blinksh/blink
- Page: https://www.trmn.sh/terminals/blink-shell

## Overview

Blink Shell is a terminal for iPhone and iPad built around Mosh and SSH, written in Swift and Objective-C and licensed under GPL-3.0. Terminal rendering uses hterm, Chromium's JavaScript terminal. Mosh keeps sessions alive across network changes and sleep, so a connection survives switching apps or moving between networks. It is for developers and administrators who work on remote servers from an iPad or iPhone, often with a hardware keyboard.

Configuration is done in the app, opened with the `config` command or Cmd+comma. There you add hosts, create or import SSH keys and copy them to a server with `ssh-copy-id`, and choose themes and fonts, including custom ones. External keyboards get extensive support: Caps Lock can be remapped to Esc or Ctrl, modifiers and shortcuts are configurable, and Cmd shortcuts control the app. On the touch keyboard, a SmartKeys bar provides Ctrl, Alt, Esc and function keys, with Ctrl and Alt able to stay pressed.

Blink starts in a local shell with commands from the ios_system framework, including `ls`, `cp`, `mv`, `grep`, `curl`, `scp`, `sftp` and `tar`. It supports redirection but not pipes, and small scripts can be written in Python or Lua. A two-finger tap opens a new shell, swiping moves between open sessions, pinching changes the font size, and a three-finger tap opens the menu. iPadOS Split View lets Blink run beside another app.

There are no split panes inside the app, no GPU renderer and no inline image support documented. The App Store version is commercial, with a Blink+ subscription and a free trial, while the GPL-3.0 source can be built and installed on your own device with Xcode using the project's prebuilt frameworks (libssh2, OpenSSL, libmoshios, protobuf and ios_system).

## Alternatives

- [Windows Terminal](https://www.trmn.sh/terminals/windows-terminal.md): Microsoft's terminal for Windows that hosts PowerShell, cmd and WSL shells in tabs and panes, with GPU text rendering and JSON settings. (Windows, 105.3k stars)
- [Tabby](https://www.trmn.sh/terminals/tabby.md): Cross-platform Electron terminal with a built-in SSH, Telnet and serial client, saved connection profiles and a plugin system. (Linux/macOS/Windows, 75.2k stars)
- [Alacritty](https://www.trmn.sh/terminals/alacritty.md): Cross-platform OpenGL terminal emulator written in Rust, configured with a TOML file and leaving tabs and splits to a multiplexer like tmux. (Linux/macOS/Windows/BSD, 66.1k stars)
- [Warp](https://www.trmn.sh/terminals/warp.md): Terminal written in Rust with an IDE-style command editor, command output grouped into blocks, and built-in AI agents. (macOS/Linux/Windows, 65.7k stars)
- [Termux](https://www.trmn.sh/terminals/termux.md): Android terminal emulator and Linux environment that installs packages through its own apt repository, no root required. (Android, 63.6k stars)
- [Ghostty](https://www.trmn.sh/terminals/ghostty.md): Terminal emulator written in Zig with GPU rendering and a native UI on each platform: Swift/AppKit on macOS, GTK on Linux. (Linux/macOS, 62.8k stars)
- [Hyper](https://www.trmn.sh/terminals/hyper.md): Electron terminal built on HTML, CSS and JavaScript, themed and extended through npm plugins. (Linux/macOS/Windows, 44.8k stars)
- [Kitty](https://www.trmn.sh/terminals/kitty.md): GPU-rendered terminal written in C and Python, with its own graphics protocol, built-in tabs and splits, and scriptable 'kittens'. (Linux/macOS/BSD, 35.5k stars)

---

Canonical: https://www.trmn.sh/terminals/blink-shell
