mobiTerm

A mobile-first web terminal
for remote access from any device.

Version License PWA
scrolling
Scroll
copy
Copy
paste
Paste
push notification
Push Notification

Features

Everything you need to open a terminal to your computer on the go.

📱

Mobile-First

Touch-optimized interface with gestures, scroll, and an on-screen toolbar. Works on any screen size.

🏗️

Zero Install Client

Open a URL from any browser — no app store, no client setup required on your device.

🔔

Push Notifications

Get notified when long-running commands finish, even when the browser tab is closed.

♻️

Persistent Sessions

tmux-backed sessions let you pick up exactly where you left off, even after disconnects.

🖥️

Full Terminal Emulation

256-color, Unicode, and full terminal support powered by xterm.js — works with vim, tmux, htop, and more.

📲

PWA Support

Install as a standalone app on iOS and Android. Full-screen, no browser chrome, native feel.

📦

Multi-Platform Binary

Single-file native binaries for Linux (x64, arm64) and macOS (x64, arm64).

How It Works

A simple pipeline from your browser to your environment.

🌐 Browser xterm.js + React
← WebSocket → ↕ WebSocket
🚀 Bun Server HTTP + WebSocket
← PTY → ↕ PTY
💻 tmux / Shell Your environment
1

Start mobiTerm on your machine with a unique identifier.

2

Expose it via your preferred tunnel (Tailscale, Microsoft devtunnel, etc.).

3

Open the URL on any device — the terminal renders instantly in your browser.

Installation

Get up and running in seconds. Choose your method:

curl -fsSL https://github.com/lampstand-labs/mobiterm/raw/main/scripts/install.sh | bash
brew install lampstand-labs/tap/mobiterm
npm install -g @lampstand-labs/mobiterm

Download the latest release from GitHub Releases:

tar xzf mobiterm-*.tar.gz
sudo mv mobiterm /usr/local/bin/

# or without sudo:
# mkdir -p ~/.local/bin && mv mobiterm ~/.local/bin/
# (add ~/.local/bin to your PATH if needed)

Usage

mobiterm <identifier>

Start mobiTerm, set up your tunnel, then open https://<your-host>:7130 in any browser.

FAQ

Common questions about mobiTerm.

Push notifications aren't working

Ensure your tunnel serves over HTTPS. On iOS, you also need to add mobiTerm to your Home Screen (Share → Add to Home Screen) — iOS only allows push notifications from installed PWAs.

Can I run multiple instances?

Yes. If the default port (7130) is already in use, mobiTerm automatically selects the next available port. You can also specify a port explicitly with --port.

Do I need to open ports on my router?

No. mobiTerm is designed to work with tunnels (Tailscale, Microsoft devtunnel, etc.). Your machine connects outbound — no port forwarding needed.

Is HTTPS required?

Your tunnel provider handles TLS termination. mobiTerm itself runs over HTTP locally. Push notifications require HTTPS, but everything else works over plain HTTP on a local network.

How do I copy and paste on mobile?

The keyboard needs to be hidden for text selection to work. Paste into the Aa input bar.

What platforms are supported?

Native binaries for Linux (x86_64, arm64 — glibc and musl) and macOS (x86_64, arm64). The client works in any modern browser — Chrome, Safari, Firefox, Edge.