littledivy / Autopilot Deno
Licence: mit
🚀 Cross-platform desktop automation library for Deno.
Stars: ✭ 341
Projects that are alternatives of or similar to Autopilot Deno
Autopy
A simple, cross-platform GUI automation module for Python and Rust.
Stars: ✭ 522 (+53.08%)
Mutual labels: automation, cross-platform
Windterm
A quicker and better cross-platform SSH/Sftp/Shell/Telnet/Serial client.
Stars: ✭ 345 (+1.17%)
Mutual labels: cross-platform, x11
Robot
Native cross-platform system automation
Stars: ✭ 178 (-47.8%)
Mutual labels: automation, cross-platform
Robot Js
Native system automation for node.js
Stars: ✭ 169 (-50.44%)
Mutual labels: automation, cross-platform
Sandpolis
Experimental remote monitoring and management
Stars: ✭ 30 (-91.2%)
Mutual labels: automation, cross-platform
Wxwidgets
wxWidgets is a free and open source cross-platform C++ framework
for writing advanced GUI applications using native controls.
Stars: ✭ 3,994 (+1071.26%)
Mutual labels: cross-platform, x11
Autopilot Rs
A simple, cross-platform GUI automation module for Rust.
Stars: ✭ 168 (-50.73%)
Mutual labels: automation, cross-platform
Hideit.sh
Automagically hide/show a window by its name when the cursor is within a defined region or you mouse over it.
Stars: ✭ 171 (-49.85%)
Mutual labels: automation, x11
Enigo
Cross platform input simulation in Rust
Stars: ✭ 254 (-25.51%)
Mutual labels: automation, cross-platform
Limonengine
3D FPS game engine with full dynamic lighting and shadows
Stars: ✭ 331 (-2.93%)
Mutual labels: cross-platform
Home Assistantconfig
🏠 Home Assistant configuration & Documentation for my Smart House. Write-ups, videos, part lists, and links throughout. Be sure to ⭐ it. Updated FREQUENTLY!
Stars: ✭ 3,687 (+981.23%)
Mutual labels: automation
Autoscraper
A Smart, Automatic, Fast and Lightweight Web Scraper for Python
Stars: ✭ 4,077 (+1095.6%)
Mutual labels: automation
Wxphp
Build cross-platform software with rich native GUIs using the combined power of the PHP language and the wxWidgets library.
Stars: ✭ 328 (-3.81%)
Mutual labels: cross-platform
Xmake
🔥 A cross-platform build utility based on Lua
Stars: ✭ 4,229 (+1140.18%)
Mutual labels: cross-platform
Insomniac
Instagram bot for automated Instagram interaction using Android device via ADB
Stars: ✭ 324 (-4.99%)
Mutual labels: automation
Notable
The Markdown-based note-taking app that doesn't suck.
Stars: ✭ 18,866 (+5432.55%)
Mutual labels: cross-platform
Electron React Boilerplate
A Foundation for Scalable Cross-Platform Apps
Stars: ✭ 18,727 (+5391.79%)
Mutual labels: cross-platform
Cross-platform desktop automation framework for Deno.
Features
-
[x] Keyboard
- [x] Type a string using
.type
- [x] Tap a key using
.tap
- [x] Toggle key using
.toggleKey
- [x] Type a string using
-
[x] Mouse
- [x] Simulate mouse movement using
.moveMouse
- [x] Click using
.click
- [x] Simulate a scroll using
.scroll
- [x] Get mouse position using
.mousePosition
- [x] Get mouse position pixel color
.pixelColor
- [x] Simulate mouse movement using
-
[x] Screen
- [x] Capture screen using
.screenshot
- [x] Get screen size using
.screenSize
- [x] Check if point out of bounds using
.pointVisible
- [x] Get number of pixels in a point using
.screenScale
- [x] Capture screen using
-
[x] Notifications
- [x] Native popup using
.alert
- [x] Notifications using
.notify
- [x] Native popup using
-
[x] Monitors
- [x] Get the number of monitors using
.getMonitors
- [x] Get the number of monitors using
-
[x] Window management (only for linux)
- [x] Get window title using
.getWindow
- [x] Transform windows size using
.transformByIndex
- [x] Get window title using
Documentation
Detailed documentation of the API is available at:
Requirements
Linux
sudo apt-get update
sudo apt-get install libdbus-1-dev x11-xserver-utils wmctrl libxtst-dev cmake libc-dev libx11-dev libxcb1-dev
Usage
Running your Deno script with AutoPilot requires some flags
deno run --unstable -A file.ts
NOTE: Prebuilt binaries are automatically downloaded the first time you import Autopilot in your project and are cached.
import AutoPilot from 'https://deno.land/x/[email protected]/mod.ts';
// create a new AutoPilot instance.
var pilot = new AutoPilot();
// type a string
await pilot.type("Yay! This works");
// alert something
await pilot.alert("This is a alert");
// get screen size
await pilot.screenSize();
// move mouse
await pilot.moveMouse(200, 400);
// take a full-screen screenshot
await pilot.screenshot("screenshot.png");
Env variables
-
CACHE
: Set if you want to update the release from Github. -
DEV
: Set if you want t use the development debug builds.
Development
- Requires rust and cargo.
- Requires velociraptor
Clone this repo and run cargo build
to produce a development build.
Commands
- Run tests:
vr test
- Run and produce benchmarks:
vr bench
- Format code fmt:
vr fmt
- Create development build:
vr build
Contributing
Contributing code and ideas to AutoPilot is really easy! Create an issue or PR. :)
License
See MIT License. All rights reserved. Divy Srivastava 2020.
Note that the project description data, including the texts, logos, images, and/or trademarks,
for each open source project belongs to its rightful owner.
If you wish to add or remove any projects, please contact us at [email protected].