32 lines
1.3 KiB
Markdown
32 lines
1.3 KiB
Markdown
# Cardboard Sikuli
|
|
|
|
IDE and scripting platform to automate and control desktop applications, for GUI application testing or robotic process automation (RPA).
|
|
|
|
This is a clean-room implementation of the Sikuli application based on RobotGo, Goja, and MIQT.
|
|
|
|
- OpenCV image matching
|
|
- Desktop IDE with screen grabber based on Qt 6
|
|
- It uses Javascript as the scripting language instead of Python 2
|
|
|
|
## Compiling
|
|
|
|
*Tested on Debian 12*
|
|
|
|
```bash
|
|
apt install libopencv-dev qt6-base-dev build-essential golang-go
|
|
go build -ldflags '-s -w'
|
|
```
|
|
|
|
## See also
|
|
|
|
- [Original MIT Sikuli](https://github.com/sikuli/sikuli)
|
|
- [RaiMan's SikuliX](https://github.com/RaiMan/SikuliX1)
|
|
- Application icon from Material Design icons (`eye-tracking`)
|
|
|
|
## Scripting reference
|
|
|
|
- `SIKULI_WAIT` - Global variable to set the default refresh rate between operations (milliseconds). Default = 200
|
|
- `SIKULI_TIMEOUT` - Global variable to set the default time to wait for an image to appear (milliseconds). Default = 3000
|
|
- `SIKULI_THRESHOLD` - Global variable to set the image match accuracy threshold (floating point from 0 to 1). Default = 0.9
|
|
- `ClickAt(filepath, offset_x, offset_y)` - Wait for image to appear, then move the mouse and click it at the specified offset. Throws a Javascript error if no match is found.
|