Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/hughperkins/ui-recorder
Record ui to json file, playback from it. Ignores your random pauses and stuff, whilst you read the instructions.
https://github.com/hughperkins/ui-recorder
Last synced: 20 days ago
JSON representation
Record ui to json file, playback from it. Ignores your random pauses and stuff, whilst you read the instructions.
- Host: GitHub
- URL: https://github.com/hughperkins/ui-recorder
- Owner: hughperkins
- License: mit
- Created: 2023-12-23T17:58:13.000Z (11 months ago)
- Default Branch: main
- Last Pushed: 2023-12-25T09:32:58.000Z (11 months ago)
- Last Synced: 2023-12-25T20:29:36.627Z (11 months ago)
- Language: Python
- Size: 42 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# ui-recorder
Record ui to json file, playback from it. Ignores your random pauses and stuff, whilst you read the instructions.
- This app fuses consecutive actions of the same type (except mouse clicks) together, into single actions.
- You can edit the recording, before playing it back.
- By default, fused actions are fused into actions of 1 second, for mouse scrolls, and mouse moves.
- Typing is played back at 10 characters per second. (about 120 wpm)*Note: only support Mac OS X*.
- tested on Sonoma, using a MacBook Air M2 (but I imagine it should run on any recent-ish Mac?)[![UI Recorder with fused actions and flawless replay](https://img.youtube.com/vi/DG5o9qqaLA8/0.jpg)](https://www.youtube.com/watch?v=DG5o9qqaLA8)
https://youtu.be/JJIVHhnK_G4
## Currently supported actions
Actions supported:
- typing (fused into a single Typing event, with the entire string)
- currently only supports lowercase a-z an 0-9
- mouse move
- mouse click, with left button
- mouse scroll, BUT, do NOT use the scroll wheel, it will lead to inconsistencies
- to scroll a bit, use up and down arrows
- to scroll up or down faster, use shift + up/down arrows
- to scroll massively, to ensure you start at a known scroll position, use command + down## Installation:
- clone this repo, and cd into the root of this repo
- if you have poetry, run `poetry install`
- otherwise, use pip: `pip install .`, or `pip install -e .`, as you prefer## To record:
- from the root of this cloned repo, run:
```
python ui_recorder/record.py --filepath [filepath where your output will be recorded as json]
```
- alt-tab over to your application
- press 'escape'
- you should hear 'recording started'
- start doing stuff :)
- when you're finished, hit escape again
- you should hear 'recording finished'Note that alt-tab is ignored, so you can freely switch backwards and forwards between your instructions, and the application you are recording.
## To playback
- from the root of this cloned repo, run:
```
python ui_recorder/replay.py --filepath [filepath to recorded json]
```
- alt-tab over to your application
- press 'escape'
- you should hear 'replay started'
- once finished, you should hear 'replay finished'