Simvyn
Universal mobile devtool — control iOS Simulators, Android Emulators, and real devices from a single dashboard and CLI
Install / Use
/learn @pranshuchittora/SimvynREADME
Quick Start
npx simvyn
Starts the local server, opens the web dashboard in your browser, and discovers all connected simulators, emulators, and USB-connected physical devices automatically.
Installation
Global install:
npm install -g simvyn
One-time use (no install):
npx simvyn
Requirements:
- Node.js >= 22.12.0
- macOS (full iOS + Android support) or Linux (Android only)
Features
- Device Management — Discover, boot, shutdown, erase, create, and clone simulators, emulators, and physical devices with favourite pinning
- App Management — Install, launch, terminate, uninstall apps via drag-and-drop or CLI
- Log Viewer — Real-time streaming with level filtering, find-in-page search (Cmd+F), regex search, pagination, and export
- Location Simulation — Set GPS coordinates, play GPX/KML routes with speed control, save favorites
- Device Settings — Dark mode, locale, orientation, permissions, status bar overrides, accessibility presets
- Screenshots and Recording — Capture screenshots and record screen video with history
- Deep Links — Open URLs and custom schemes, save favorites per app
- Database Inspector — Browse SQLite tables, run SQL queries, view SharedPreferences and NSUserDefaults
- File Browser — Browse app sandboxes, upload/download files, edit text inline
- Push Notifications — Compose JSON payloads, send to iOS simulators, template library
- Collections — Bundle device actions into reusable sequences, apply to multiple devices at once
- Crash Logs — iOS diagnostic reports and Android logcat/tombstone crashes
- Clipboard — Read and write device clipboard contents
- Media — Push photos and videos to device camera rolls and galleries
- Tool Settings — Server configuration, storage management, diagnostics, and debug reports
- Real Device Support — Connect physical Android and iOS devices via USB with automatic discovery
- Web Dashboard — Apple Liquid Glass design with command palette, keyboard navigation
- Full CLI — Every feature works headlessly via
simvyn <command>
Module Showcases
Device Management
Discover all connected iOS Simulators, Android Emulators, and USB-connected physical devices in one unified list. Boot, shutdown, and erase devices without touching Xcode or Android Studio. Create new iOS simulators by choosing a device type and runtime, or clone an existing one to quickly spin up duplicates. Physical devices appear automatically when plugged in and are grouped separately in the device selector.
<p align="center"><img src="https://raw.githubusercontent.com/pranshuchittora/simvyn/main/docs/assets/device-management.png" alt="Device Management" width="700" /></p>- List all available simulators, emulators, and physical devices across platforms
- Boot, shutdown, and erase devices with one click or CLI command
- Create new iOS simulators with device type and runtime selection
- Clone and rename existing simulators
- Pin favourite devices to the top of the device selector
- Real-time device state updates via WebSocket
App Management
Install, launch, terminate, and uninstall apps on any connected device. Drag and drop IPA or APK files directly onto the dashboard. View detailed app information and clear app data without manual adb or simctl commands.
<p align="center"><img src="https://raw.githubusercontent.com/pranshuchittora/simvyn/main/docs/assets/app-management.png" alt="App Management" width="700" /></p>- Drag-and-drop IPA and APK installation
- Launch, terminate, and uninstall apps by bundle ID
- View app details including version, size, and permissions
- Clear app data on Android devices
- List all installed apps with search filtering
Log Viewer
Stream device logs in real time with powerful filtering. Filter by log level, search with regex patterns, and filter by process name. Use find-in-page search (Cmd+F) to highlight specific entries without hiding surrounding context. Export filtered logs for sharing or archival. Paginated history lets you scroll back through thousands of entries without performance issues.
<p align="center"><img src="https://raw.githubusercontent.com/pranshuchittora/simvyn/main/docs/assets/log-viewer.png" alt="Log Viewer" width="700" /></p>- Real-time log streaming via WebSocket
- Filter by level: debug, info, warning, error, fatal
- Find-in-page search (Cmd+F) with match highlighting, navigation, and counter
- Regex search and process name filtering
- Paginated history with virtual scrolling
- Export filtered logs to file
- Pause/resume log streaming while preserving state across clears
Location
Set precise GPS coordinates on any device using an interactive map or manual input. Play back GPX and KML route files with adjustable speed control. Save frequently used locations as favorites for quick access.
<p align="center"><img src="https://raw.githubusercontent.com/pranshuchittora/simvyn/main/docs/assets/location.png" alt="Location" width="700" /></p>- Interactive map with click-to-set coordinates
- GPX and KML route file playback with speed control
- Favorite locations saved per device
- Multi-device location broadcast
- Reverse geocoding for human-readable addresses
Device Settings
Toggle dark mode, change locale, rotate device orientation (Android), manage app permissions, and override status bar appearance. Apply accessibility presets to test your app under different conditions. All settings changes take effect immediately on the target device.
<p align="center"><img src="https://raw.githubusercontent.com/pranshuchittora/simvyn/main/docs/assets/device-settings.png" alt="Device Settings" width="700" /></p>- Toggle dark/light mode
- Change device locale
- Manage app permissions
- Override status bar (time, battery, signal)
- Accessibility presets (bold text, increase contrast, content size)
Screenshots and Recording
Capture screenshots and record screen video on any device. All captures are saved with timestamps and organized in a browsable history. Download or delete captures directly from the dashboard.
<p align="center"><img src="https://raw.githubusercontent.com/pranshuchittora/simvyn/main/docs/assets/screenshots-and-recordings.png" alt="Screenshots and Recording" width="700" /></p>- One-click screenshot capture
- Screen recording with start/stop controls
- Timestamped capture history
- Download and delete captures from the dashboard
Deep Links
Open URLs and custom URI schemes on any device. Save frequently used deep links as favorites organized by app. Test your app's deep link handling without manually typing URLs into a terminal.
<p align="center"><img src="https://raw.githubusercontent.com/pranshuchittora/simvyn/main/docs/assets/deep-links.png" alt="Deep Links" width="700" /></p>- Open any URL or custom scheme on a device
- Save favorite deep links per app
- Link history with recent-first ordering
- Works with both iOS and Android
Database Inspector
Browse SQLite databases inside any app's sandbox. View table schemas, run arbitrary SQL queries, and inspect SharedPreferences (Android) or NSUserDefaults (iOS). Edit values inline without writing scripts.
<p align="center"><img src="https://raw.githubusercontent.com/pranshuchittora/simvyn/main/docs/assets/database-inspector.png" alt="Database Inspector" width="700" /></p>- Browse SQLite tables with sortable columns
- Run arbitrary SQL queries
- View and edit SharedPreferences and NSUserDefaults
- Inline cell editing with type detection
File Browser
Browse the sandbox file system of any installed app. Navigate directories, upload and download files, and edit text files inline. Transfer files between your machine and the device without manual adb pull/push commands.
<p align="center"><img src="https://raw.githubusercontent.com/pranshuchittora/simvyn/main/docs/assets/file-system.png" alt="File Browser" width="700" /></p>- Browse app sandbox directories
- Upload and download files
- Inline text file editing
- Works with both iOS and Android app containers
Push Notifications
Compose JSON push notification payloads and send them to iOS simulators. Use the built-in template library as a starting point or write payloads from scratch. Real-time JSON validation highlights errors before sending.
<p align="center"><img src="https://raw.githubusercontent.com/pranshuchittora/simvyn/main/docs/assets/push-notifications.png" alt="Push Notifications" width="700" /></p>- Compose and send push payloads to iOS simulators
- Built-in payload template library
- Real-time JSON validation
- Target specific apps by bundle ID
Collections
Create reusable sets of device actions and apply them to multiple devices at once. Collections bundle together steps like setting location, toggling dark mode, and installing an app into a single repeatable workflow. Three starter presets ship with simvyn to get you started.
<p align="center"><img src="https://raw.githubusercontent.com/pranshuchittora/simvyn/main/docs/assets/collections.png" alt="Collections" wi