30 open-source projects similar to appium/appium, ranked by shared indexed features. Tags may describe platforms or build tools rather than the same primary purpose. Check each project’s use case, license, and deployment requirements before treating it as a replacement.
Maestro is a declarative mobile and web UI automation framework designed for end-to-end testing. It operates by querying the native accessibility tree of an application, allowing for black-box testing without requiring source code instrumentation or platform-specific dependencies. The framework distinguishes itself through a unified command syntax that abstracts interactions across Android, iOS, and web environments. It features a dynamic synchronization engine that automatically pauses test execution to account for non-deterministic animations and network-dependent content loading, ensuring
WebDriverIO is a Node.js test automation framework used for automating functional tests across web browsers and mobile applications. It acts as a WebDriver protocol client that manages remote browser sessions and executes commands against WebDriver and Appium servers to perform end-to-end testing. The framework is distinguished by its ability to control both native and hybrid mobile applications and its support for running automated suites across local machines, remote grids, and cloud device providers. It includes specialized capabilities for coordinating multi-browser interactions and estab
Nightwatch is a Node.js test automation tool and W3C WebDriver test framework designed for executing functional test suites and verifying system behavior. It provides a suite of utilities for web browser automation, native mobile application testing, and REST API validation. The project includes specialized tools for visual regression testing, which compares current screenshots against baseline images to detect unexpected changes. It also features an accessibility auditing tool to check user interface elements against established standards for compliance. The framework covers a broad range o
Intern is a JavaScript test framework and runner designed for executing unit and functional tests across different environments. It serves as an end-to-end testing tool and cross-browser testing suite to verify that application behavior remains consistent across multiple desktop and mobile web browsers. The project enables automated browser testing by controlling web drivers and utilizing cloud testing services to simulate user interactions. This allows for the automation of functional tests and cross-platform web testing to identify bugs in a web interface. The system provides capabilities
php-webdriver is a WebDriver PHP client and browser automation framework that implements the W3C WebDriver standard. It serves as a programmatic interface for controlling web browsers, executing JavaScript, and managing browser sessions in both headed and headless environments. The library functions as a Selenium protocol implementation, allowing PHP applications to communicate with browser drivers such as ChromeDriver or GeckoDriver. It provides the ability to automate user actions, navigate pages, and validate DOM elements for web UI testing. Its capabilities cover broad areas of browser i
UI-TARS is an LLM GUI automation framework and multimodal action grounding system. It functions as a GUI agent orchestrator and cross-platform device controller that uses large language models to interpret graphical interfaces and execute actions across desktop and mobile operating systems. The system translates model-generated coordinates into precise screen positions to interact with visual user interface elements. It employs a multimodal approach to interpret screen layouts and decomposes complex goals into multi-step trajectories through reasoning and error correction. The project provid
Ktor is a framework for building asynchronous server applications and cross-platform network clients using the Kotlin programming language. It provides a lightweight, modular architecture that allows developers to construct services and communication layers by composing independent components and plugins. The framework is defined by its pipeline-based plugin system, which enables the injection of custom logic into request processing stages, and a type-safe domain-specific language for defining application routing. By utilizing an asynchronous execution model, it handles concurrent network ope
This application is a cross-platform desktop utility designed for automated translation, optical character recognition, and speech synthesis. It functions as a modular client that integrates various local and remote language services, allowing users to process text through hotkeys, clipboard monitoring, or direct input. The software distinguishes itself through a plugin-based architecture and a built-in automation framework. By exposing a local network interface, it enables external applications and scripts to programmatically trigger its translation and recognition workflows. Users can furth
Puppeteer is a browser automation library that provides a programmatic interface for controlling web browsers to execute tasks, simulate user interactions, and perform end-to-end testing. It functions as a headless browser controller, managing browser lifecycles, isolated session contexts, and remote connections to facilitate stable, automated web-based workflows. The library distinguishes itself through its deep integration with the Chrome DevTools Protocol, utilizing a bidirectional message bus to execute commands and receive real-time event notifications. It supports advanced automation pa
Robotjs is a native Node.js automation library and desktop input simulator. It uses C++ bindings to provide low-level access to operating system functions, allowing for the programmatic control of the mouse and keyboard and the analysis of screen pixels. The library functions as a toolkit for automating user interfaces and desktop workflows, including those within Electron applications. It enables the simulation of key presses and mouse movements to automate interactions with desktop software and perform automated data entry. Its capabilities extend to screen pixel analysis, where it capture
Quarkus is a Kubernetes-native Java framework designed for building high-performance, memory-efficient applications. It utilizes ahead-of-time native compilation to transform Java code into standalone, optimized binaries that eliminate the need for a virtual machine, enabling rapid startup and reduced memory consumption. By performing code augmentation during the build phase, it shifts heavy processing tasks away from runtime, ensuring that applications are optimized for cloud-native environments. The framework distinguishes itself through a unified approach to reactive and imperative program
WebDriverAgent is an on-device control agent and automation server that implements the WebDriver protocol for iOS devices. It serves as a bridge that enables the remote control of applications and the operating system on physical iOS devices and simulators for automated testing. The project provides a UI testing framework capable of interacting with on-screen elements, capturing screenshots, and simulating user gestures. It translates remote commands into native system calls to interact with the iOS accessibility hierarchy. The server covers a broad range of device orchestration and UI autom
Docker-Android runs a full Android emulator inside a Docker container, enabling mobile app testing and automation without requiring a physical device. The emulator uses QEMU-based virtualization with optional KVM acceleration for hardware-backed performance, and supports nested virtualization on cloud VMs from providers like AWS, GCP, and Azure for environments without direct hardware acceleration. The container exposes the Android Debug Bridge over TCP/IP, allowing host-side tools to connect to the emulator as if it were a local device. It provides browser-based interaction with the emulator
WebDriverAgent is an iOS device automation driver and server that enables the programmatic control of applications on physical devices and simulators. It functions as a bridge that exposes Apple XCUITest capabilities via a network interface, translating WebDriver commands into native iOS actions for mobile UI testing. The system implements a WebDriver server that uses the JSON Wire Protocol to receive instructions and return results. It translates these network requests into local commands to manage application lifecycles, perform screen gestures, and verify the presence of specific user inte
WinAppDriver is a WebDriver compatible server and UI automation driver used to run functional tests on Windows desktop applications. It implements the Selenium WebDriver protocol to programmatically control and verify the behavior of native user interfaces. The tool supports a wide range of application frameworks, including Universal Windows Platform, WinForms, WPF, and legacy Win32 applications. It includes capabilities for recording keyboard and mouse interactions to automatically generate the query paths and code required for automation scripts.
Detox is a gray-box end-to-end testing framework designed for mobile applications. It automates user interactions and verifies interface states by synchronizing test execution with the internal readiness of the application, ensuring that scripts wait for background tasks, network requests, and animations to complete before proceeding. The framework distinguishes itself through native-side binary instrumentation, which allows it to monitor the application message queue and query the native view hierarchy in real time. By interacting directly with the application process, it avoids reliance on
php-webdriver is a browser automation library and PHP language binding for the Selenium WebDriver protocol. It serves as a web application testing tool that allows for the programmatic control of web browsers to simulate user interactions and navigate web pages. The project implements the WebDriver protocol to manage browser sessions and execute automated functional tests. It enables integration with Selenium servers to perform automated web testing and support headless browser workflows. The library provides capabilities for configuring browser properties and managing the lifecycle of remot
geckodriver is a browser automation driver and W3C WebDriver implementation. It functions as a proxy server that translates standardized WebDriver commands into internal instructions for web browsers based on the Gecko engine. The project enables the programmatic control of Gecko-based browsers to simulate user interactions and automate repetitive web tasks. It supports both standard browser automation and headless browser orchestration for workflows executing without a graphical user interface. The software is used for automated web testing to verify website functionality and user interface
CodeceptJS is a NodeJS end-to-end testing framework designed for automating acceptance tests across web, mobile, and desktop applications using a unified API. It serves as a cross-platform test automator and a behavior-driven development tool that maps human-readable feature files to technical step definitions. The framework features AI-powered test maintenance that uses machine learning to automatically identify and repair broken element selectors. It includes capabilities for autonomous test generation and a server that allows external agents to control tests and debug browser sessions in r
SeleniumBase is a Python-based framework designed for end-to-end web application testing and automated web scraping. It provides a unified interface for browser orchestration, managing browser lifecycles, and executing complex interaction sequences across multiple browser vendors and operating systems. The framework simplifies the development of automation workflows by handling driver provisioning, element synchronization, and project scaffolding. The project distinguishes itself through specialized stealth configurations that modify browser fingerprints to bypass anti-bot detection mechanism
Selenium is a comprehensive browser automation framework that provides a standardized interface for controlling web browsers to perform automated tasks, user interactions, and data extraction. It functions as a cross-browser testing tool, enabling developers to execute identical automation scripts across various browser engines and operating systems to ensure consistent application behavior. By implementing the WebDriver protocol, it maps high-level automation commands to browser-specific drivers using a standardized HTTP-based wire protocol. The project distinguishes itself through its distr
mini.nvim is a comprehensive library of independent modules designed to extend Neovim with a wide array of navigation, user interface, and text manipulation tools. It serves as a modular plugin collection, a UI toolkit for creating custom statuslines and notifications, and a package manager for installing and pinning external plugins from Git. The project provides a specialized fuzzy picker framework for filtering files and symbols, an LSP completion engine with interactive snippet expansion, and a dedicated plugin test framework that uses headless editor instances and remote procedure calls
uiautomator2 is an Android device automation tool and UI testing library. It functions as a framework for automating user interface interactions and managing device states via a remote client. The project provides a remote management interface for controlling Android applications, simulating user gestures, and managing system settings. It enables the analysis of XML UI hierarchies to locate interface elements and verify application behavior. The tool covers broad capability areas including application lifecycle management, device connectivity, and file system operations. It also includes sys
This is a comprehensive library of code examples and reference implementations for building cross-platform user interfaces with Flutter. The project provides a collection of demo applications and guides designed to illustrate the implementation of design patterns, animation techniques, and testing workflows. The repository features specific demonstrations for native integration, including examples of embedding modules into existing native applications, using platform channels, and bridging native code with the framework. It also serves as an animation reference, providing implementations for
Backstage is an open-source framework for building internal developer portals. It provides a centralized, metadata-driven software catalog that tracks ownership, dependencies, and lifecycle status for all technical assets by harvesting configuration files directly from version control systems. The platform is built on a plugin-based modular architecture, allowing teams to extend core functionality through isolated, independently deployable modules that integrate into a unified frontend and backend ecosystem. The project distinguishes itself through its focus on developer productivity and stan
Nextcloud is a self-hosted platform designed for private cloud storage, file synchronization, and collaborative team workspaces. It provides a comprehensive suite of tools for document editing, groupware services like calendars and contacts, and secure data management, all while ensuring users maintain full control over their infrastructure and data sovereignty. The platform distinguishes itself through a decentralized federated architecture that allows independent server instances to securely share data and collaborate across a network. It features a highly modular plugin ecosystem, enabling
Kit is a desktop automation framework and scriptable UI toolkit designed for building personalized productivity tools. It serves as a cross-platform CLI wrapper and macOS system automator, providing an environment to execute scripts that manage operating system tasks, file management, and application workflows. The project distinguishes itself with a dedicated LLM integration layer for structured data extraction and text generation, alongside a specialized UI framework for creating interactive input forms, HTML windows, and floating widgets. It features deep macOS integration through AppleScr
Cypress is a browser-based testing framework designed for writing and running automated tests directly inside the browser. It serves as an end-to-end testing framework, a frontend component testing tool, and a web application test runner. The project also functions as a headless browser automation tool and a network traffic interceptor. The system differentiates itself by executing test code within the same browser process as the application, allowing for direct access to the DOM. It includes a network traffic interception system to stub and manipulate browser requests, as well as a graphical
This project is a desktop automation scripting framework and shell script command runner. It allows users to execute custom scripts and workflows from a central launcher to automate repetitive desktop tasks and system operations. The framework functions as a unified command interface and a JSON input automation bridge, serializing search queries into arguments passed to the execution environment. It integrates large language model prompts directly into the desktop interface to automate content generation and answer questions. The system handles a broad range of capabilities including the exe
Bytebot is an LLM desktop automation framework and virtual Linux desktop environment. It enables AI agents to plan and execute mouse and keyboard actions on a virtual computer using natural language, allowing for autonomous desktop automation and the integration of legacy systems that lack native APIs. The system operates as an LLM API gateway and a Model Context Protocol server, routing requests across multiple language model providers with integrated load balancing and rate limiting. It provides isolated, containerized environments where agents use visual reasoning to interpret screenshots