Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Rust
  3. autopilot-rs

autopilot-rs

Apache-2.0Rust

A cross-platform GUI automation library for Rust, enabling mouse and keyboard control across macOS, Windows, and X11.

GitHubGitHub
427 stars53 forks0 contributors

What is autopilot-rs?

AutoPilot is a Rust library for cross-platform GUI automation, ported from the Python AutoPy library. It enables programmatic control of the mouse, keyboard, and screen, allowing developers to automate interactions with graphical user interfaces. It is designed for creating automation scripts, testing tools, and accessibility applications.

Target Audience

Rust developers who need to automate GUI interactions on macOS, Windows, or X11 systems, such as those building automation scripts, testing frameworks, or accessibility tools.

Value Proposition

Developers choose AutoPilot for its simple, minimal Rust API that provides reliable cross-platform automation without unnecessary dependencies, making it easy to integrate into Rust applications compared to more complex alternatives.

Overview

A simple, cross-platform GUI automation module for Rust.

Use Cases

Best For

  • Creating automation scripts that simulate mouse movements and clicks across platforms.
  • Building testing tools that require keyboard input simulation for GUI applications.
  • Developing accessibility tools that programmatically control screen interactions.
  • Implementing cross-platform automation for tasks like data entry or UI navigation.
  • Generating sine wave or other patterned mouse movements for demonstrations or tests.
  • Displaying native alert dialogs to interact with users during automation workflows.

Not Ideal For

  • Projects requiring advanced GUI features like image recognition or screen scraping.
  • High-performance automation tasks where low latency and real-time interaction are critical.
  • Teams needing extensive community support, third-party plugins, or a large ecosystem of integrations.
  • Environments without X11 or where the XTest extension is unavailable on Linux.

Pros & Cons

Pros

Cross-Platform Compatibility

Supports macOS, Windows, and X11 systems, enabling consistent automation across major operating systems without platform-specific code, as stated in the README.

Simple API Design

Offers a straightforward Rust interface for common tasks, such as autopilot::mouse::move_to and autopilot::key::type_string, making it easy to integrate, as shown in the examples.

Minimal Dependencies

Focuses on reliability with a lean codebase, reducing bloat and potential conflicts, aligning with its philosophy of simplicity without unnecessary dependencies.

Native Alert Integration

Includes built-in functions like autopilot::alert::alert to display system-native dialogs, useful for user interaction during automation workflows.

Cons

Limited Functionality

Lacks advanced features such as OCR, screen capture, or support for specific UI frameworks, focusing only on basic mouse and keyboard control, which may not suffice for complex automation needs.

Platform-Specific Requirements

On Linux/X11, requires the XTest extension, which can add setup complexity and may not be available on all systems, limiting portability in some environments.

Sparse Documentation

The README is brief and redirects to another repo, and the niche Rust ecosystem means fewer tutorials and community resources compared to Python's AutoPy or other automation libraries.

Frequently Asked Questions

Quick Stats

Stars427
Forks53
Contributors0
Open Issues11
Last commit8 months ago
CreatedSince 2018

Tags

#simulation#input#desktop-automation#accessibility#mouse-control#gui-automation#gui#cross-platform#testing-tools#rust-library#keyboard-automation#rust#automation

Built With

R
Rust

Included in

Rust56.6k
Auto-fetched 6 hours ago

Related Projects

TauriTauri

Build smaller, faster, and more secure desktop and mobile applications with a web frontend.

Stars109,398
Forks3,794
Last commit21 hours ago
imguiimgui

Dear ImGui: Bloat-free Graphical User interface for C++ with minimal dependencies

Stars74,986
Forks11,931
Last commit18 hours ago
DioxusDioxus

Fullstack app framework for web, desktop, and mobile.

Stars38,231
Forks1,805
Last commit1 day ago
icediced

A cross-platform GUI library for Rust, inspired by Elm

Stars31,053
Forks1,623
Last commit1 day ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub