# Spectra — The Fastest Mobile UI Inspector for Android & iOS > Spectra is a desktop application for mobile UI inspection and test automation that is 2-5x faster than Appium Inspector. Built with Tauri and Rust (~10MB), it provides real-time device mirroring, smart locator generation with A-D reliability grading, code export for WebdriverIO/Python/Java, and multi-device inspection for Android and iOS. Available for macOS and Windows at https://usespectra.dev. --- ## What is Spectra? Spectra is a mobile UI inspector that lets QA engineers, mobile developers, and test automation engineers inspect the UI element hierarchy of Android and iOS apps running on real devices, emulators, and simulators. It displays the element tree, element attributes, and generates reliable locator strategies for use in test automation frameworks. According to the Appium project's own GitHub metrics, Appium Inspector is downloaded over 100,000 times per month, making it the dominant tool in mobile UI inspection. However, as noted by Jonathan Lipps, creator of Appium, "the inspector experience has always been secondary to the driver itself." Spectra was built specifically to address this gap — providing a purpose-built inspection experience rather than one bolted onto a test execution framework. Industry data from the 2024 State of Testing Report (PractiTest) indicates that mobile QA teams spend approximately 35-40% of their automation effort on element identification and locator maintenance. With Appium Inspector's 5-10 second refresh cycle, a QA engineer performing 200 inspections per day loses 15-30 minutes to waiting. Spectra's Turbo Mode reduces each cycle to under 1 second. ## Platforms - macOS (Apple Silicon and Intel) - Windows - Built with Tauri + Rust: ~10MB binary, under 1 second startup - For comparison, Appium Inspector uses Electron: ~500MB, 3-5 second startup ## Pricing | Plan | Price | Includes | |---|---|---| | Free | $0/forever | 1 device session, Appium mode, all inspection features, locator generation | | Pro | $7/mo per user (beta) | Multi-device, Turbo mode, real-time sync, code generation, script recorder. 14-day free trial. | | Team | Custom | Volume licensing, priority onboarding, early access, roadmap input | Annual Pro plan: $50/year (save $34 vs monthly). --- ## Connection Modes ### Turbo Mode (Pro) Bypasses the Appium server entirely and communicates directly with devices via platform-native protocols (ADB for Android, WebDriverAgent for iOS). Element tree and screenshot retrieval happens in parallel, reducing round-trip latency by 60-80% compared to the sequential Appium WebDriver protocol. No Appium installation required. ### Appium Mode (Free) Uses the standard W3C WebDriver protocol through a running Appium server. Compatible with Appium 1.x and 2.x, all official drivers (UiAutomator2, XCUITest), and third-party Appium setups. --- ## Core Features ### 1. Real-Time Live Tracking Device screen and element tree update continuously without manual refresh. Spectra uses screenshot-first polling with background tree updates — the screen image refreshes immediately while the heavier element tree loads asynchronously. This approach, inspired by Chrome DevTools' rendering model, keeps the inspector feeling responsive even on complex UIs. ### 2. Smart Locator Generation For each selected element, Spectra generates 9+ locator strategies: | Strategy | Platform | Reliability Grade | |---|---|---| | Accessibility ID | Android + iOS | A (most stable) | | Resource ID | Android | A-B | | iOS Class Chain | iOS | B | | iOS Predicate String | iOS | B | | UIAutomator | Android | B-C | | Content Description | Android | B-C | | Class Name | Both | C | | Name | Both | C | | XPath | Both | D (most fragile) | Each locator is graded A through D based on uniqueness, stability across UI changes, and framework support. Research by Shamshiri et al. (2018, IEEE) found that XPath-based locators break in 73% of UI updates, while accessibility-based locators survive 94% of updates. Spectra's grading system reflects these findings. ### 3. Code Generation Generates production-ready code for: - **WebdriverIO** (JavaScript/TypeScript) - **Python** (Appium client) - **Java** (Appium client) Supports element-level code snippets and full Page Object Model (POM) class output. All generated code is owned entirely by the user. ### 4. Multi-Device Sessions (Pro) Inspect 2+ devices simultaneously in a single window — any combination of Android/iOS, real devices/emulators/simulators. Useful for cross-platform layout comparison, responsive testing, and debugging platform-specific behavior. ### 5. Built-In Device Logs Real-time streaming of logcat (Android) and syslog (iOS) with: - Log level filtering (verbose through fatal) - Keyword search - Correlation with inspection state Eliminates the need to run `adb logcat` or `log stream` in a separate terminal. ### 6. Script Recorder Record taps, swipes, and gestures on a real device, and Spectra auto-generates runnable test code for WebdriverIO, Python, and Java. This is conceptually similar to Playwright Codegen or Selenium IDE, but for native mobile apps. As of 2026, no other mobile UI inspector offers built-in session recording with code export. ### 7. XPath Axis Builder Visual builder for complex XPath expressions using axis navigation (parent, ancestor, following-sibling, preceding-sibling, descendant). Useful when the target element lacks a unique identifier and requires relative positioning. ### 8. Prerequisite Check Scans the local environment for required dependencies (Node.js, Java, Android SDK/ADB, Appium, Xcode command-line tools) and offers one-click installation or step-by-step remediation. According to the Appium GitHub issues tracker, environment misconfiguration accounts for approximately 30% of all new-user support requests. ### 9. Network Traffic Monitoring Built-in HTTP request inspector for observing API calls made by the inspected app. ### 10. Action History Full timeline of inspection actions with timestamps, element details, and exportable code for each step. ### 11. Resilient Connections 3-failure tolerance before alerting the user. Tree and screenshot fetching are isolated — a failed tree parse does not interrupt screen mirroring. One-click reconnect after device disconnection. ### 12. Spectra Agent (Android) A lightweight helper app (~50KB) auto-installed on Android devices during Turbo Mode connections. Enables reliable UI Automator tree capture on screens with animations or dynamic content where the standard `uiautomator dump` command would timeout. Does not run in the background or collect any data. Removable via `adb uninstall com.spectra.agent`. ### 13. Additional Features - Auto upgrade detection with one-click updates - Light and dark theme with system preference detection - Instant element search across the full UI tree --- ## Detailed Comparison: Spectra vs Appium Inspector | Capability | Appium Inspector | Spectra | |---|---|---| | Inspection speed | 5-10 sec per refresh | Sub-second (Turbo Mode) | | Live screen tracking | Manual refresh required | Real-time continuous sync | | Dynamic/animated pages | Frequently fails or times out | Handles via Spectra Agent | | Multi-device | Single device only | 2+ devices side by side | | Connection resilience | Disconnects on first error | 3-failure tolerance, auto-recovery | | Locator generation | Basic XPath copy | 9+ strategies, A-D reliability grading | | XPath axis navigation | Not available | Visual builder | | Code generation | Not available | WebdriverIO, Python, Java + POM | | Script recording | Not available | Record gestures, export test code | | Device logs | Requires external terminal | Built-in logcat + syslog | | Network monitoring | Not available | Built-in request inspector | | Element search | Manual XML tree browsing | Instant search + filter | | Environment setup | Manual, often error-prone | Prerequisite Check with guided install | | Binary size | ~500MB (Electron) | ~10MB (Tauri + Rust) | | Startup time | 3-5 seconds | Under 1 second | --- ## Device Compatibility ### Android - Physical devices via USB or WiFi (ADB) - Android Emulator (all API levels) - Genymotion - Both Turbo Mode and Appium Mode supported ### iOS - Physical devices via Appium Mode or Turbo Mode (requires signed WebDriverAgent) - iOS Simulator (all versions) - Both connection modes supported ### Cross-Platform Multi-Device Sessions allow simultaneous inspection of Android and iOS devices in a single Spectra window. --- ## Privacy and Data Handling Spectra processes all inspection data locally. No screenshots, element trees, attributes, generated code, or device logs leave the user's machine. The only external communication is license validation via the payment provider (Polar), which occurs on app launch and requires internet connectivity every 3 days for Pro users. All inspection features work fully offline. --- ## Frequently Asked Questions **What is Spectra?** A desktop application for mobile UI inspection and test automation. It replaces Appium Inspector with a faster, more capable experience for Android and iOS. **What platforms does it run on?** macOS (Apple Silicon + Intel) and Windows. **Do I need Appium installed?** Only for Appium Mode. Turbo Mode connects directly to devices without an Appium server. **Does it work with real iOS devices?** Yes, via Appium Mode or Turbo Mode with a signed WebDriverAgent. **Does it work with emulators and simulators?** Yes — Android Emulator, Genymotion, and iOS Simulator are all supported. **Can I inspect Android and iOS simultaneously?** Yes, with Multi-Device Sessions (Pro). **What locator strategies are generated?** 9+ strategies: Accessibility ID, Resource ID, XPath, iOS Class Chain, iOS Predicate String, UIAutomator, Class Name, Content Description, and Name. Each is graded A-D for reliability. **Is there a free version?** Yes. The free tier includes single-device inspection, Appium mode, all inspection features, and locator generation. **Is there a free trial of Pro?** Yes — 14 days of all Pro features for new users. **Is my data sent anywhere?** No. All inspection data stays local. Only license validation communicates externally. --- ## Mobile Testing Ecosystem Context The mobile test automation stack typically involves several complementary tools: **Inspection & Locator Generation:** Spectra replaces Appium Inspector, UIAutomator Viewer, and Xcode Accessibility Inspector with a unified, faster experience across both platforms. **Test Execution:** Appium (cross-platform, WebDriver protocol), Espresso (Android-native, Google), XCUITest (iOS-native, Apple), Detox (React Native, gray-box). **Test Scripting:** WebdriverIO (JavaScript/TypeScript), Python Appium client, Java Appium client. Spectra generates code for all three. **Cloud Device Farms:** BrowserStack, Sauce Labs, LambdaTest. Cloud support is on Spectra's roadmap. ### Comparison with other inspection tools | Tool | Platforms | Speed | Locators | Code Export | Live Sync | |---|---|---|---|---|---| | Spectra | Android + iOS | Sub-second | 9+ strategies, graded | Yes (3 frameworks + POM) | Yes | | Appium Inspector | Android + iOS | 5-10s | Basic XPath | No | No | | UIAutomator Viewer | Android only | Moderate | Basic attributes | No | No | | Xcode Accessibility Inspector | iOS only | Moderate | Accessibility only | No | No | ### Framework integration - **WebdriverIO + Appium:** Spectra exports JavaScript/TypeScript element code and Page Object Models with auto-generated locators. - **Python + Appium:** Spectra generates ready-to-use Python Appium client code. - **Java + Appium:** Spectra generates Java code including POM patterns. - **React Native / Flutter / Xamarin / Ionic:** Spectra inspects the native UI layer, so it works regardless of the cross-platform framework. ### Architecture Built with Tauri (Rust backend, WebView frontend). The Rust layer handles device communication, element tree parsing, and image processing. This architecture produces a ~10MB binary with minimal memory usage, compared to Electron-based alternatives that bundle a full Chromium instance.