Skip to main content

Desktop streaming client for iOS Bridge simulator sessions with Electron app integration

Project description

iOS Bridge CLI

A Python-based command-line tool for streaming and controlling iOS simulator sessions from your desktop, similar to how scrcpy works for Android devices.

Features

  • ๐Ÿ–ฅ๏ธ Desktop streaming of iOS simulator sessions
  • ๐ŸŽฎ Touch and keyboard input control
  • ๐Ÿ“ฑ Device controls (Home, Screenshot, Device Info)
  • ๐Ÿ”Œ WebSocket-based real-time streaming
  • ๐Ÿš€ Easy installation via pip
  • ๐Ÿ’ป Cross-platform Electron-based UI
  • ๐ŸŒ Remote server support (Windows/Linux/macOS)
  • ๐Ÿ–ฅ๏ธ Local server management (macOS only)

Installation

pip install ios-bridge-cli

Platform Support

macOS (Full Functionality)

  • โœ… Local server management
  • โœ… Remote client connections
  • โœ… Desktop streaming
  • โœ… All CLI commands

Windows/Linux (Remote Client Only)

  • โŒ Local server (requires macOS + Xcode)
  • โœ… Remote client connections
  • โœ… Desktop streaming
  • โœ… Session management commands

Quick Start

Cross-Platform Setup (Most Common)

Run iOS simulators on Mac, stream to Windows/Linux:

Mac (Server):

ios-bridge start-server --host 0.0.0.0 --port 8000

Windows/Linux (Client):

ios-bridge connect http://[MAC-IP]:8000 --save
ios-bridge list
ios-bridge stream <session-id>

๐Ÿ“– Complete Cross-Platform Setup Guide

Remote Server Connection

# Connect to your deployed iOS Bridge server
ios-bridge connect https://ios-bridge.yourcompany.com --save

# Test connection
ios-bridge server-status

# Use all commands with remote server
ios-bridge devices
ios-bridge create "iPhone 14 Pro" "18.2" --wait
ios-bridge stream <session_id>

Local Server Management (macOS Only)

# Start the iOS Bridge server (auto-detects server location)
ios-bridge start-server

# Start server in background
ios-bridge start-server --background

# Start server on custom port
ios-bridge start-server --port 9000

# Check server status
ios-bridge server-status

# Stop the server
ios-bridge kill-server

# Force stop all server processes
ios-bridge kill-server --force --all

Session Management

# List available device types and iOS versions
ios-bridge devices

# Create a new iOS simulator session
ios-bridge create "iPhone 14 Pro" "16.0" --wait

# List active sessions
ios-bridge list

# Get session information
ios-bridge info <session_id>

# Terminate a session
ios-bridge terminate <session_id>

Streaming and Control

# Stream an existing session in desktop window
ios-bridge stream <session_id>

# Stream with quality settings
ios-bridge stream <session_id> --quality ultra --fullscreen

# Take screenshot
ios-bridge screenshot <session_id> --output screenshot.png

Note: The --server option is still available if you need to connect to a remote server, but it defaults to http://localhost:8000 when using the local server commands.

Controls

  • Mouse: Click and drag for touch input
  • Keyboard: Type directly into the device
  • Ctrl+C: Close streaming window and exit
  • F1: Home button
  • F2: Take screenshot
  • F3: Show device info

Requirements

  • macOS (for iOS Bridge server)
  • Python 3.8+
  • Running iOS Bridge server instance

Architecture

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”    HTTP/WS     โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”    IPC    โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚   Python CLI    โ”‚ โ†โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ†’ โ”‚  iOS Bridge     โ”‚           โ”‚  Electron App   โ”‚
โ”‚                 โ”‚                 โ”‚    Server       โ”‚           โ”‚                 โ”‚
โ”‚ โ€ข CLI parsing   โ”‚                 โ”‚                 โ”‚           โ”‚ โ€ข Video render  โ”‚
โ”‚ โ€ข API client    โ”‚                 โ”‚ โ€ข Session mgmt  โ”‚ โ†โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ†’ โ”‚ โ€ข Touch input   โ”‚
โ”‚ โ€ข Process mgmt  โ”‚                 โ”‚ โ€ข WebSockets    โ”‚           โ”‚ โ€ข UI controls   โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜                 โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜           โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

License

MIT License

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ios_bridge_cli-1.0.4.tar.gz (630.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ios_bridge_cli-1.0.4-py3-none-any.whl (614.3 kB view details)

Uploaded Python 3

File details

Details for the file ios_bridge_cli-1.0.4.tar.gz.

File metadata

  • Download URL: ios_bridge_cli-1.0.4.tar.gz
  • Upload date:
  • Size: 630.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for ios_bridge_cli-1.0.4.tar.gz
Algorithm Hash digest
SHA256 9b19ac14c23c6de624e22d11dab8c7d33d406dc6667e3f7a40f4391047fe6b4f
MD5 ae0b0a770bea538788e04d9b6a9434a1
BLAKE2b-256 136ba8ea3661f01851088e6282e2c52880cc071be38ebc4bfd01712dddbfc7e5

See more details on using hashes here.

File details

Details for the file ios_bridge_cli-1.0.4-py3-none-any.whl.

File metadata

  • Download URL: ios_bridge_cli-1.0.4-py3-none-any.whl
  • Upload date:
  • Size: 614.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for ios_bridge_cli-1.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 a4cbcef6a8e87c95da7dcedf17098e32c4112ccdf2262235516ffce57fdf05c3
MD5 0b636ad643d4c93e4f397101d1ecb6b1
BLAKE2b-256 33908ab1f8ab4773b4fbf00755c84961d96eeee82a22fdf916151a538dc051cc

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page