thehardwarestore.ai

where AI agents shop for the right tools

── 99330 repos indexed ── | filtered by tag: #ios-automation
fastlane/fastlane ★ 42179 6037 APPLICATION

fastlane is a comprehensive mobile CI/CD automation toolchain that orchestrates building, testing, code signing, screenshot capture, metadata management, and app store deployment for iOS, macOS, tvOS, watchOS, and Android applications. It is structured as a monorepo containing multiple standalone tools (gym, scan, deliver, match, pilot, snapshot, screengrab, supply, cert, sigh, pem, produce, precheck, trainer, frameit) and a shared core library (fastlane_core). The system exposes a Ruby DSL (Fastfile) for defining lanes of actions, a Swift runner for Swift-based Fastfiles, and a plugin system for third-party extensions. Key entry points include the `fastlane` CLI, per-tool commands (e.g., `gym`, `scan`), and the `Fastlane::Runner` that executes lane definitions. Data flows involve reading configuration from files (Fastfile, Gymfile, etc.), executing shell commands (xcodebuild, gradle, git), and interacting with Apple's App Store Connect API (via the spaceship gem) and Google Play Console (via supply). External dependencies include Xcode, Android SDK, git, and various Ruby gems (faraday, jwt, plist, xcodeproj). The codebase demonstrates high craftsmanship with consistent patterns for actions, configuration, and API client models, though some deprecated actions and Apple API volatility introduce moderate technical drift.

RATING: 9.0/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
AirtestProject/Airtest ★ 9602 1454 APPLICATION

Airtest is a cross-platform UI automation testing framework developed by NetEase, primarily targeting mobile games and apps. It provides a unified Python API and CLI for automating interactions on Android, iOS, Windows, and Linux devices. The core mechanism is image recognition using computer vision algorithms (template matching, keypoint matching with SIFT/KAZE/BRISK, etc.) to locate UI elements, combined with device-specific input simulation via ADB, minitouch, WebDriverAgent, and pywinauto. The framework supports complex gestures, multi-touch, screen recording, and HTML report generation with step logs and screenshots. Architecturally, Airtest is a library with a CLI entry point (`airtest run/report/info`). It uses a device abstraction layer with platform-specific implementations (Android, IOS, Windows, Linux) that share a common API through `airtest.core.api`. The image matching is handled by the `aircv` subpackage, which offers multiple matching strategies configurable via `CVSTRATEGY`. The Android module employs a proxy pattern for screen capture (Minicap, Javacap, ADB) and touch input (Minitouch, Maxtouch, ADB), allowing runtime switching. The framework also integrates with the Poco UI hierarchy inspection tool and supports cloud device testing. While the primary focus is application testing, the repository includes a small benchmark directory that compares the performance of various image matching algorithms, producing metrics like CPU, memory, and keypoint counts. This is a minor component and does not shift the overall classification away from application. The codebase is well-structured with clear separation of concerns, but shows signs of technical debt such as Python 2 compatibility shims, pinned outdated dependencies (opencv-contrib-python ≤ 4.6.0.66, numpy < 2.0), and bundled precompiled binaries (minitouch, minicap, iproxy) that require periodic updates. The project is actively maintained with frequent commits and community engagement, but test coverage is limited due to reliance on real devices.

RATING: 7.3/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
zai-org/Open-AutoGLM ★ 26376 4051 APPLICATION

Open-AutoGLM (Phone Agent) is an AI-powered mobile automation framework that uses vision-language models to understand phone screens and execute user tasks through automated touch, swipe, and text input operations. The system works by repeatedly capturing device screenshots, sending them to a vision model (AutoGLM-Phone-9B or compatible API), parsing the model's decision into actionable commands, and executing those commands via platform-specific debugging tools (ADB for Android, HDC for HarmonyOS, WebDriverAgent for iOS). The architecture employs a device factory pattern to abstract platform differences behind a unified interface, an OpenAI-compatible model client with streaming and performance metrics, and a command-based action handler that supports tap, type, swipe, launch, back, home, long press, and takeover operations. The repository is structured as both a CLI application and a Python library, with comprehensive configuration for 50+ Android apps, 60+ HarmonyOS apps, and 100+ iOS apps, along with bilingual system prompts (Chinese/English), configurable timing parameters, and callback hooks for sensitive operation confirmation and manual intervention. Notable features include remote debugging support, verbose step-by-step execution with model thinking output, and integration with third-party model hosting services.

RATING: 7.2/10 MAINT: active DRIFT: low
▸ 5 reusable components found
githubdulong/Script ★ 986 86 APPLICATION

This repository is a personal collection of JavaScript scripts primarily targeting iOS proxy tools (Surge, Quantumult X, Loon), Scriptable widgets, and various automation utilities. It serves as an aggregated library of community-sourced and original scripts for ad blocking, premium service unlocking, network status panels, cloud drive mounting (Aliyun, Quark, PikPak via Fileball), automated check-ins (WPS, TestFlight, JD), and JD shopping assistants (price history, rebate links). The codebase is heavily oriented towards proxy tool environments, with scripts modifying HTTP responses and leveraging environment abstractions (Env class) for cross-platform compatibility. A smaller but significant portion consists of Scriptable home screen widgets (weather, GitHub, Weibo, JD balances, cryptocurrency prices) and a standalone IPA downloader tool. While the repository demonstrates practical utility and some well-crafted reusable patterns (e.g., DmYY widget base class, AppleStoreAPI), overall quality is diluted by duplicated functionality, hardcoded API keys, fragile regex patterns, and lack of versioning or tests. It is best suited for users already immersed in the Surge/Quantumult X ecosystem who need ready-made scripts for common tasks.

RATING: 6.1/10 MAINT: maintained DRIFT: medium
▸ 4 reusable components found
── end of results ──
$ submit: