• This repository has been archived on 16/Dec/2022
  • Stars
    star
    15,032
  • Rank 1,958 (Top 0.04 %)
  • Language
    JavaScript
  • License
    MIT License
  • Created over 6 years ago
  • Updated almost 2 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Chrome extension that records your browser interactions and generates a Playwright or Puppeteer script.

🚨 Deprecated!

As of Dec 16th 2022, Headless Recorder is fully deprecated. No new changes, support, maintenance or new features are expected to land.

For more information and possible alternatives refer to this issue.

Headless Recorder

Headless Recorder

Github Build Chrome Webstore Users Chrome Webstore Version

πŸŽ₯ Headless recorder is a Chrome extension that records your browser interactions and generates a Playwright/Puppeteer script.


Headless recorder demo


Overview

Headless recorder is a Chrome extension that records your browser interactions and generates a Playwright or Puppeteer script. Install it from the Chrome Webstore to get started!

This project builds on existing open source projects (see Credits) but adds extensibility, configurability and a smoother UI. For more information, please check our documentation.

πŸ€” Do you want to learn more about Puppeteer and Playwright? Check our open Headless Guides


What you can do?

  • Records clicks and type events.
  • Add waitForNavigation, setViewPort and other useful clauses.
  • Generates a Playwright & Puppeteer script.
  • Preview CSS selectors of HTML elements.
  • Take full page and element screenshots.
  • Pause, resume and restart recording.
  • Persist latest script in your browser
  • Copy to clipboard.
  • Run generated scripts directly on Checkly
  • Flexible configuration options and dark mode support.
  • Allows data-id configuration for element selection.

Recorded Events

  • click
  • dblclick
  • change
  • keydown
  • select
  • submit
  • load
  • unload

This collection will be expanded in future releases. πŸ’ͺ


How to use?

  1. Click the icon and hit the red button.

  2. πŸ‘‰ Hit tab after you finish typing in an input element. πŸ‘ˆ

  3. Click on links, inputs and other elements.

  4. Wait for full page load on each navigation.

    The icon will switch from recording icon to waiting icon to indicate it is ready for more input from you.

  5. Click Pause when you want to navigate without recording anything. Hit Resume to continue recording.

⌨️ Shortcuts

  • alt + k: Toggle overlay
  • alt + shift + F: Take full page screenshot
  • alt + shift + E: Take element screenshot

Run Locally

After cloning the project, open the terminal and navigate to project root directory.

$ npm i # install dependencies

$ npm run serve # run development mode

$ npm run test # run test cases

$ npm run lint # run and fix linter issues

$ npm run build # build and zip for production

Install Locally

  1. Open chrome and navigate to extensions page using this URL: chrome://extensions.
  2. Make sure "Developer mode" is enabled.
  3. Click "Load unpacked extension" button, browse the headless-recorder/dist directory and select it.


Release

  1. Bump version using npm version (patch, minor, major).
  2. Push changes with tags git push --tags
  3. Generate a release using gren: gren release --override --data-source=milestones --milestone-match="{{tag_name}}"

🚨 Make sure all issues associated with the new version are linked to a milestone with the name of the tag.


Credits

Headless recorder is the spiritual successor & love child of segment.io's Daydream and ui recorder.


License

MIT

Checkly
Delightful Active Monitoring for Developers
From Checkly with β™₯️

More Repositories

1

puppeteer-examples

Puppeteer example scripts for running Headless Chrome from Node.
JavaScript
2,959
star
2

theheadless.dev

πŸͺ– Learn Puppeteer and Playwright - Tips, tricks and in-depth guides from the trenches.
Vue
397
star
3

puppeteer-to-playwright

Puppeteer to Playwright conversion script
JavaScript
136
star
4

checkly-cli

TS/JS native Monitoring as Code workflow
TypeScript
63
star
5

docs.checklyhq.com

Checkly docs
SCSS
55
star
6

terraform-provider-checkly

Terraform provider for the Checkly monitoring service
Go
44
star
7

public-roadmap

Checkly public roadmap. All planned features, updates and tweaks.
37
star
8

headless-benchmarks

Benchmarking scripts for Puppeteer, Playwright, WebDriverIO & Cypress.
JavaScript
34
star
9

jamstack-deploy

Measure cloud providers and check which fits better for your Jamstack App.
Vue
30
star
10

pulumi-checkly

Pulumi provider for the Checkly monitoring service
Python
19
star
11

checkly-go-sdk

Go SDK library for use with the Checkly API
Go
16
star
12

checkly-operator

Kubernetes checkly operator
Go
11
star
13

vitals-tester

CSS
10
star
14

checkly-k8s

Checkly Kubernetes Helm chart and manifests
Smarty
6
star
15

nextjs-conf-performance-demo

JavaScript
6
star
16

handlebars

A simple wrapper for Handlebars that can be used as a drop-in replacement
JavaScript
4
star
17

danube-store

Vue
4
star
18

checkly-ci-test

Vue
3
star
19

browser-checks-starter

Examples and scripts accompanying the getting started docs on writing browser checks
JavaScript
3
star
20

checkly-terraform-getting-started

HCL
3
star
21

browser-checks-starter-mocha

Examples and scripts accompanying the getting started docs on writing browser checks
JavaScript
2
star
22

pingdom-2-checkly

A simple Node script to convert Pingdom HTTP checks to Checkly and import them
JavaScript
2
star
23

next-commerce-demo

TypeScript
2
star
24

serverless-plugin-select-resource

serverless plugin for selecting which resources to be deployed based on region and stage
JavaScript
2
star
25

my-gatsby-blog

JavaScript
1
star
26

guides-monitoring-as-code

JavaScript
1
star
27

mac-demo-repo

JavaScript
1
star
28

dns_debug_script

JavaScript
1
star
29

checkly-sample-pom

TypeScript
1
star