Skip to content

PyXStepRecorder is a lightweight Python tool that automates the creation of visual, step-by-step with screenshots

License

Notifications You must be signed in to change notification settings

SeqLaz/PyXStepRecorder

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

7 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ“Έ PyXStepRecorder

PyXStepRecorder is a lightweight Python tool that automates the creation of visual, step-by-step screenshots. Inspired by xsr, it sits quietly in the background, capturing your screen only when you click, and instantly compiling everything into a single, portable HTML file.

It is perfect for creating:

  • Software tutorials
  • QA bug reports
  • Process documentation
  • User guides
  • Tests reports

✨ Features

  • Event-Driven Recording: Only takes screenshots when you click (Left, Right, or Middle).
  • Visual Feedback: Overlays a custom cursor image on screenshots to show exactly where you clicked.
  • Single-File Output: Generates a standalone HTML file with embedded images (Base64) β€” no external image folders to manage.
  • Lightweight: Uses static images instead of video, making files small and easy to share on emails.
  • CLI Support: Fully configurable via command line using Google Fire.

πŸ› οΈ Installation

Prerequisites

  • Python 3.8+

1. Clone the Repository

git clone https://github.com/SeqLaz/PyXStepRecorder.git
cd PyXStepRecorder

2. Set Up Environment

Recommended using a virtual environment:

python -m venv .venv
source .venv/bin/activate  # On Windows Powershell: .venv\Scripts\Activate.ps1
pip install fire pynput Pillow

πŸš€ Usage

PyXStepRecorder uses a CLI interface. You can define your output path, custom cursor, and image quality directly from your terminal.

Quick Start

cd py_xsr
python py_xsr.py --outfile="C:Users/my_username/Documents/steps/my_guide_001.html"

Advanced Configuration

Flag Short Default Description
--outfile -o recording.html Path and name of the final HTML file.
--cursor -c resources/Cursor.png Path to the PNG image used for the click overlay.
--png -p True Use PNG for lossless quality. Set to False for JPEG.
--quality -q 80 Image compression quality (1-100).

Using flags for custom settings:

python py_xsr.py --outfile="C:Users/my_username/Documents/steps/tutorial_001.html" --cursor="C:Users/my_username/Downloads/custom_cursor.png" --quality=60 --png=False

Upon stopping the script (usually Ctrl+C), it wraps all captured steps into a responsive HTML template.

πŸ“„ License

Distributed under the MIT License. See LICENSE for more information.

About

PyXStepRecorder is a lightweight Python tool that automates the creation of visual, step-by-step with screenshots

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages