ios-bridge-cli


Nameios-bridge-cli JSON
Version 1.0.10 PyPI version JSON
download
home_pagehttps://github.com/AutoFlowLabs/ios-bridge-cli
SummaryDesktop streaming client for iOS Bridge simulator sessions with Electron app integration
upload_time2025-08-19 05:29:50
maintainerNone
docs_urlNone
authoriOS Bridge Team
requires_python>=3.8
licenseMIT
keywords ios simulator bridge streaming electron desktop mobile testing
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # iOS Bridge CLI

**Stream and control iOS simulators like a desktop app** - The macOS equivalent of `scrcpy` for iOS development.

iOS Bridge CLI lets you stream iOS simulator sessions to any device with a beautiful desktop interface. Perfect for cross-platform development teams, remote work, and testing iOS apps from Windows/Linux machines.

## What iOS Bridge CLI Does

🖥️ **Desktop Streaming** - View iOS simulators in a native desktop window  
🎮 **Touch & Keyboard Control** - Click, tap, type, and gesture naturally  
🌐 **Cross-Platform Client** - Stream from Mac to Windows, Linux, or other Macs  
📱 **Real Device Experience** - Full touch controls, home button, screenshots  
🚀 **Zero Configuration** - Works out of the box with automatic server management  
⚡ **High Performance** - WebRTC streaming with ultra-low latency

## Installation

```bash
pip install ios-bridge-cli
```

**Requirements**: macOS (for server), Python 3.8+, Xcode (for iOS simulators)

## Quick Start

### 1. Create and Stream an iOS Session

```bash
# Create an iPhone simulator
ios-bridge create "iPhone 15 Pro" "18.2" --wait

# Stream it to desktop
ios-bridge stream
```

That's it! A desktop window opens with your iOS simulator ready for interaction.

### 2. Cross-Platform Setup (Mac Server → Windows/Linux Client)

**On Mac (Server):**
```bash
# Start the server for remote access
ios-bridge start-server --host 0.0.0.0

# Create and get session ID
ios-bridge create "iPhone 15 Pro" "18.2" --wait
ios-bridge list  # Copy the session ID
```

**On Windows/Linux (Client with Full Features):**
```bash
# Connect to your Mac server
ios-bridge connect http://YOUR-MAC-IP:8000 --save

# Full session management capabilities
ios-bridge create "iPhone 15 Pro" "18.2" --wait  # Create sessions
ios-bridge list                                   # List all sessions
ios-bridge stream                                 # Stream (auto-detects session)
ios-bridge terminate <session-id>                # Terminate sessions
ios-bridge info <session-id>                     # Get session details
```

> **✨ Important**: Windows and Linux clients have **complete feature parity** with macOS when connected to a Mac server. You can create, manage, stream, and control iOS sessions exactly like on Mac - the only requirement is the initial server connection.

### 3. Web Interface (Browser Streaming)

```bash
# Stream in browser instead of desktop app
ios-bridge stream <session-id> --web-only

# Then open: http://localhost:8000/web/<session-id>
```

## Core Commands

### Session Management
```bash
# List available device types
ios-bridge devices

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

# List active sessions
ios-bridge list

# Get session details
ios-bridge info <session-id>

# Terminate session
ios-bridge terminate <session-id>
```

### App Installation
```bash
# Install iOS app (.ipa or .zip) on simulator
ios-bridge install-app /path/to/MyApp.ipa

# Install and launch immediately (shows upload progress)
ios-bridge install-app /path/to/MyApp.ipa --launch

# Install on specific session (auto-detects if only one session)
ios-bridge install-app /path/to/MyApp.zip <session-id> --launch

# Skip confirmation prompt with visual progress
ios-bridge install-app /path/to/MyApp.ipa --force
```

**Features:**
- 📊 **Visual Progress Bar**: Real-time upload progress indicator
- ⚙️ **Installation Status**: Clear feedback during processing
- 🎯 **File Size Display**: Shows file size before upload
- 🚀 **Launch Integration**: Automatic app launching after installation

### Streaming & Control
```bash
# Stream session (auto-detects if only one session)
ios-bridge stream

# Stream specific session
ios-bridge stream <session-id>

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

# Take screenshot
ios-bridge screenshot --output screenshot.png
```

### Server Management
```bash
# Start server (macOS only)
ios-bridge start-server

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

# Check server status
ios-bridge server-status

# Stop server
ios-bridge kill-server
```

### Remote Connection
```bash
# Connect to remote server and save
ios-bridge connect https://ios-bridge.company.com --save

# Test connection
ios-bridge server-status

# Use all commands with remote server
ios-bridge devices
ios-bridge create "iPhone 14" "18.2"
```

## Desktop Controls

- **Mouse**: Click and drag for touch input
- **Keyboard**: Type directly into the simulator
- **F1**: Home button
- **F2**: Screenshot  
- **F3**: Device info
- **F4**: Toggle keyboard
- **F11**: Toggle fullscreen
- **Ctrl+C**: Close and exit

## Platform Support

| Platform | Local Server | Remote Client | Desktop Streaming |
|----------|:------------:|:-------------:|:-----------------:|
| **macOS** | ✅ Full | ✅ Full | ✅ Native App |
| **Windows** | ❌ | ✅ Full | ✅ Native App |
| **Linux** | ❌ | ✅ Full | ✅ Native App |

*Local server requires macOS + Xcode for iOS simulator access*

## Advanced Usage

### Quality Settings
```bash
# Ultra quality (best for local network)
ios-bridge stream --quality ultra

# Low quality (best for slow connections)  
ios-bridge stream --quality low
```

### Server Options
```bash
# Custom server host/port
ios-bridge start-server --host 192.168.1.100 --port 9000

# Background server with custom settings
ios-bridge start-server --background --host 0.0.0.0 --port 8080
```

### Web Interface Features
- 🌐 No desktop app installation required
- 📱 Mobile-friendly interface
- 🔗 Shareable URLs for team collaboration
- 🚀 WebRTC streaming option

## How It Works

```
┌─────────────────┐    HTTP/WebSocket    ┌─────────────────┐    
│   iOS Bridge    │ ←──────────────────→ │  Desktop Client │    
│     Server      │                      │   (Windows/     │    
│                 │                      │   Linux/Mac)    │    
│ • iOS Simulator │                      │                 │    
│ • Session Mgmt  │                      │ • Video Stream  │    
│ • WebRTC/WS API │                      │ • Touch Input   │    
│   (macOS Only)  │                      │ • Native UI     │    
└─────────────────┘                      └─────────────────┘    
```

The server runs on macOS (where iOS simulators are available) and streams to desktop clients on any platform.

## Common Workflows

### iOS Development Team
1. **QA Team**: Run server on Mac mini, stream to Windows/Linux machines
2. **Remote Work**: Develop on Mac, test from anywhere with web interface  
3. **Team Reviews**: Share session URLs for collaborative testing

### Individual Developer
1. **Multi-Monitor Setup**: Stream simulator to second monitor
2. **Screen Recording**: Use desktop apps like OBS to record iOS interactions
3. **Cross-Platform Testing**: Test iOS app while working on Windows/Linux

## Troubleshooting

**"No sessions available"**
```bash
# Check if sessions exist
ios-bridge list

# Create a new session
ios-bridge create "iPhone 15 Pro" "18.2" --wait
```

**Connection errors**
```bash
# Check server status
ios-bridge server-status

# Restart server if needed
ios-bridge kill-server
ios-bridge start-server
```

**Desktop app won't start**
- Ensure server is running first: `ios-bridge start-server`
- Try web interface: `ios-bridge stream --web-only`
- Check for port conflicts: `ios-bridge start-server --port 9000`

## Development

For development documentation, see:
- [Desktop App Development Guide](ios_bridge_cli/electron_app/DEVELOPMENT.md)
- [CLI Development Setup](ios_bridge_cli/electron_app/DEV-COMMANDS.md)

### Quick Development Setup
```bash
# CLI development
git clone <repo-url>
cd ios-bridge-cli
pip install -e .

# Desktop app development  
cd ios_bridge_cli/electron_app
npm install
npm run dev
```

## License

MIT License - see LICENSE file for details

---

**Getting Started**: `pip install ios-bridge-cli && ios-bridge start-server && ios-bridge create "iPhone 15 Pro" "18.2" --wait && ios-bridge stream`

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/AutoFlowLabs/ios-bridge-cli",
    "name": "ios-bridge-cli",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": null,
    "keywords": "ios, simulator, bridge, streaming, electron, desktop, mobile, testing",
    "author": "iOS Bridge Team",
    "author_email": "iOS Bridge Team <kukreja.him@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/5d/64/058385c0627654e6af5a77dcc441ca4ada36bf23f022ddfafedc9c1bdd61/ios_bridge_cli-1.0.10.tar.gz",
    "platform": null,
    "description": "# iOS Bridge CLI\n\n**Stream and control iOS simulators like a desktop app** - The macOS equivalent of `scrcpy` for iOS development.\n\niOS Bridge CLI lets you stream iOS simulator sessions to any device with a beautiful desktop interface. Perfect for cross-platform development teams, remote work, and testing iOS apps from Windows/Linux machines.\n\n## What iOS Bridge CLI Does\n\n\ud83d\udda5\ufe0f **Desktop Streaming** - View iOS simulators in a native desktop window  \n\ud83c\udfae **Touch & Keyboard Control** - Click, tap, type, and gesture naturally  \n\ud83c\udf10 **Cross-Platform Client** - Stream from Mac to Windows, Linux, or other Macs  \n\ud83d\udcf1 **Real Device Experience** - Full touch controls, home button, screenshots  \n\ud83d\ude80 **Zero Configuration** - Works out of the box with automatic server management  \n\u26a1 **High Performance** - WebRTC streaming with ultra-low latency\n\n## Installation\n\n```bash\npip install ios-bridge-cli\n```\n\n**Requirements**: macOS (for server), Python 3.8+, Xcode (for iOS simulators)\n\n## Quick Start\n\n### 1. Create and Stream an iOS Session\n\n```bash\n# Create an iPhone simulator\nios-bridge create \"iPhone 15 Pro\" \"18.2\" --wait\n\n# Stream it to desktop\nios-bridge stream\n```\n\nThat's it! A desktop window opens with your iOS simulator ready for interaction.\n\n### 2. Cross-Platform Setup (Mac Server \u2192 Windows/Linux Client)\n\n**On Mac (Server):**\n```bash\n# Start the server for remote access\nios-bridge start-server --host 0.0.0.0\n\n# Create and get session ID\nios-bridge create \"iPhone 15 Pro\" \"18.2\" --wait\nios-bridge list  # Copy the session ID\n```\n\n**On Windows/Linux (Client with Full Features):**\n```bash\n# Connect to your Mac server\nios-bridge connect http://YOUR-MAC-IP:8000 --save\n\n# Full session management capabilities\nios-bridge create \"iPhone 15 Pro\" \"18.2\" --wait  # Create sessions\nios-bridge list                                   # List all sessions\nios-bridge stream                                 # Stream (auto-detects session)\nios-bridge terminate <session-id>                # Terminate sessions\nios-bridge info <session-id>                     # Get session details\n```\n\n> **\u2728 Important**: Windows and Linux clients have **complete feature parity** with macOS when connected to a Mac server. You can create, manage, stream, and control iOS sessions exactly like on Mac - the only requirement is the initial server connection.\n\n### 3. Web Interface (Browser Streaming)\n\n```bash\n# Stream in browser instead of desktop app\nios-bridge stream <session-id> --web-only\n\n# Then open: http://localhost:8000/web/<session-id>\n```\n\n## Core Commands\n\n### Session Management\n```bash\n# List available device types\nios-bridge devices\n\n# Create new simulator session\nios-bridge create \"iPhone 14 Pro\" \"16.0\" --wait\n\n# List active sessions\nios-bridge list\n\n# Get session details\nios-bridge info <session-id>\n\n# Terminate session\nios-bridge terminate <session-id>\n```\n\n### App Installation\n```bash\n# Install iOS app (.ipa or .zip) on simulator\nios-bridge install-app /path/to/MyApp.ipa\n\n# Install and launch immediately (shows upload progress)\nios-bridge install-app /path/to/MyApp.ipa --launch\n\n# Install on specific session (auto-detects if only one session)\nios-bridge install-app /path/to/MyApp.zip <session-id> --launch\n\n# Skip confirmation prompt with visual progress\nios-bridge install-app /path/to/MyApp.ipa --force\n```\n\n**Features:**\n- \ud83d\udcca **Visual Progress Bar**: Real-time upload progress indicator\n- \u2699\ufe0f **Installation Status**: Clear feedback during processing\n- \ud83c\udfaf **File Size Display**: Shows file size before upload\n- \ud83d\ude80 **Launch Integration**: Automatic app launching after installation\n\n### Streaming & Control\n```bash\n# Stream session (auto-detects if only one session)\nios-bridge stream\n\n# Stream specific session\nios-bridge stream <session-id>\n\n# Stream with quality settings\nios-bridge stream <session-id> --quality ultra --fullscreen\n\n# Take screenshot\nios-bridge screenshot --output screenshot.png\n```\n\n### Server Management\n```bash\n# Start server (macOS only)\nios-bridge start-server\n\n# Start server in background\nios-bridge start-server --background --port 9000\n\n# Check server status\nios-bridge server-status\n\n# Stop server\nios-bridge kill-server\n```\n\n### Remote Connection\n```bash\n# Connect to remote server and save\nios-bridge connect https://ios-bridge.company.com --save\n\n# Test connection\nios-bridge server-status\n\n# Use all commands with remote server\nios-bridge devices\nios-bridge create \"iPhone 14\" \"18.2\"\n```\n\n## Desktop Controls\n\n- **Mouse**: Click and drag for touch input\n- **Keyboard**: Type directly into the simulator\n- **F1**: Home button\n- **F2**: Screenshot  \n- **F3**: Device info\n- **F4**: Toggle keyboard\n- **F11**: Toggle fullscreen\n- **Ctrl+C**: Close and exit\n\n## Platform Support\n\n| Platform | Local Server | Remote Client | Desktop Streaming |\n|----------|:------------:|:-------------:|:-----------------:|\n| **macOS** | \u2705 Full | \u2705 Full | \u2705 Native App |\n| **Windows** | \u274c | \u2705 Full | \u2705 Native App |\n| **Linux** | \u274c | \u2705 Full | \u2705 Native App |\n\n*Local server requires macOS + Xcode for iOS simulator access*\n\n## Advanced Usage\n\n### Quality Settings\n```bash\n# Ultra quality (best for local network)\nios-bridge stream --quality ultra\n\n# Low quality (best for slow connections)  \nios-bridge stream --quality low\n```\n\n### Server Options\n```bash\n# Custom server host/port\nios-bridge start-server --host 192.168.1.100 --port 9000\n\n# Background server with custom settings\nios-bridge start-server --background --host 0.0.0.0 --port 8080\n```\n\n### Web Interface Features\n- \ud83c\udf10 No desktop app installation required\n- \ud83d\udcf1 Mobile-friendly interface\n- \ud83d\udd17 Shareable URLs for team collaboration\n- \ud83d\ude80 WebRTC streaming option\n\n## How It Works\n\n```\n\u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510    HTTP/WebSocket    \u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510    \n\u2502   iOS Bridge    \u2502 \u2190\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2192 \u2502  Desktop Client \u2502    \n\u2502     Server      \u2502                      \u2502   (Windows/     \u2502    \n\u2502                 \u2502                      \u2502   Linux/Mac)    \u2502    \n\u2502 \u2022 iOS Simulator \u2502                      \u2502                 \u2502    \n\u2502 \u2022 Session Mgmt  \u2502                      \u2502 \u2022 Video Stream  \u2502    \n\u2502 \u2022 WebRTC/WS API \u2502                      \u2502 \u2022 Touch Input   \u2502    \n\u2502   (macOS Only)  \u2502                      \u2502 \u2022 Native UI     \u2502    \n\u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518                      \u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518    \n```\n\nThe server runs on macOS (where iOS simulators are available) and streams to desktop clients on any platform.\n\n## Common Workflows\n\n### iOS Development Team\n1. **QA Team**: Run server on Mac mini, stream to Windows/Linux machines\n2. **Remote Work**: Develop on Mac, test from anywhere with web interface  \n3. **Team Reviews**: Share session URLs for collaborative testing\n\n### Individual Developer\n1. **Multi-Monitor Setup**: Stream simulator to second monitor\n2. **Screen Recording**: Use desktop apps like OBS to record iOS interactions\n3. **Cross-Platform Testing**: Test iOS app while working on Windows/Linux\n\n## Troubleshooting\n\n**\"No sessions available\"**\n```bash\n# Check if sessions exist\nios-bridge list\n\n# Create a new session\nios-bridge create \"iPhone 15 Pro\" \"18.2\" --wait\n```\n\n**Connection errors**\n```bash\n# Check server status\nios-bridge server-status\n\n# Restart server if needed\nios-bridge kill-server\nios-bridge start-server\n```\n\n**Desktop app won't start**\n- Ensure server is running first: `ios-bridge start-server`\n- Try web interface: `ios-bridge stream --web-only`\n- Check for port conflicts: `ios-bridge start-server --port 9000`\n\n## Development\n\nFor development documentation, see:\n- [Desktop App Development Guide](ios_bridge_cli/electron_app/DEVELOPMENT.md)\n- [CLI Development Setup](ios_bridge_cli/electron_app/DEV-COMMANDS.md)\n\n### Quick Development Setup\n```bash\n# CLI development\ngit clone <repo-url>\ncd ios-bridge-cli\npip install -e .\n\n# Desktop app development  \ncd ios_bridge_cli/electron_app\nnpm install\nnpm run dev\n```\n\n## License\n\nMIT License - see LICENSE file for details\n\n---\n\n**Getting Started**: `pip install ios-bridge-cli && ios-bridge start-server && ios-bridge create \"iPhone 15 Pro\" \"18.2\" --wait && ios-bridge stream`\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Desktop streaming client for iOS Bridge simulator sessions with Electron app integration",
    "version": "1.0.10",
    "project_urls": {
        "Bug Tracker": "https://github.com/AutoFlowLabs/ios-bridge/issues",
        "Homepage": "https://github.com/AutoFlowLabs/ios-bridge"
    },
    "split_keywords": [
        "ios",
        " simulator",
        " bridge",
        " streaming",
        " electron",
        " desktop",
        " mobile",
        " testing"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "e36be760ec2613c0624f6f022922f98983e79049252817a506394d442a1c376a",
                "md5": "9de5d9df41f88c8a6386f1fd084d116f",
                "sha256": "f4e849cc5dad3f630927d17cf5846aabe31ddd48954aa759fc68696196a12898"
            },
            "downloads": -1,
            "filename": "ios_bridge_cli-1.0.10-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "9de5d9df41f88c8a6386f1fd084d116f",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 634102,
            "upload_time": "2025-08-19T05:29:48",
            "upload_time_iso_8601": "2025-08-19T05:29:48.878407Z",
            "url": "https://files.pythonhosted.org/packages/e3/6b/e760ec2613c0624f6f022922f98983e79049252817a506394d442a1c376a/ios_bridge_cli-1.0.10-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "5d64058385c0627654e6af5a77dcc441ca4ada36bf23f022ddfafedc9c1bdd61",
                "md5": "a67d6c0498e581c15b1e0e552a06f0ed",
                "sha256": "4dda27a117eca3e6f602b553143df8410a9779075bc82f1a763a0e033e514788"
            },
            "downloads": -1,
            "filename": "ios_bridge_cli-1.0.10.tar.gz",
            "has_sig": false,
            "md5_digest": "a67d6c0498e581c15b1e0e552a06f0ed",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 648371,
            "upload_time": "2025-08-19T05:29:50",
            "upload_time_iso_8601": "2025-08-19T05:29:50.325672Z",
            "url": "https://files.pythonhosted.org/packages/5d/64/058385c0627654e6af5a77dcc441ca4ada36bf23f022ddfafedc9c1bdd61/ios_bridge_cli-1.0.10.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-08-19 05:29:50",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "AutoFlowLabs",
    "github_project": "ios-bridge-cli",
    "github_not_found": true,
    "lcname": "ios-bridge-cli"
}
        
Elapsed time: 3.33549s