explaingit

schickling/chromeless

13,230TypeScriptAudience · developerComplexity · 3/5Setup · moderate

TLDR

Chromeless was a TypeScript library for automating Chrome, clicking, form-filling, screenshots, with a unique option to run those browser sessions on AWS Lambda in parallel. Now deprecated in favor of Puppeteer.

Mindmap

mindmap
  root((chromeless))
    What it does
      Automate Chrome
      Chainable commands
      Screenshots
    Modes
      Local mode
      Remote AWS Lambda
      Parallel sessions
    Use cases
      Browser testing
      Web scraping
      Parallel test runs
    Status
      Deprecated
      Puppeteer recommended
    Setup
      Node.js
      AWS account optional
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Write automated browser tests that run in real Chrome rather than a simulated environment

USE CASE 2

Scrape web pages that need JavaScript to render their content

USE CASE 3

Run hundreds of parallel browser sessions on AWS Lambda to reduce test suite time from minutes to seconds

Tech stack

TypeScriptNode.jsChromeAWS LambdaServerless

Getting it running

Difficulty · moderate Time to first run · 30min

Remote mode requires an AWS account and a Serverless framework deployment, local mode needs only Node.js and Chrome.

In plain English

Chromeless was a library for controlling a Chrome browser through code, letting you write scripts that open web pages, click on things, fill out forms, take screenshots, and extract data, all without a person sitting at a keyboard. It was aimed at developers who needed to run automated tests against a real browser or scrape web content that requires JavaScript to render. The project has since been deprecated in favor of Puppeteer, a similar tool now maintained by Google, but the repository remains available for reference. The main appeal of Chromeless was that it could run in two modes. In local mode, it drove a Chrome installation on your own machine, which made for a fast feedback loop during development. In remote mode, it would spin up Chrome on AWS Lambda, a cloud computing service, and control it from your laptop over a network connection. The remote mode meant you could run hundreds of browser sessions in parallel, drastically cutting the time needed to run large test suites. The project notes that one team reduced their test run time from around 20 minutes to a few seconds using this approach. The code API was designed to chain commands together in a readable sequence. A typical script would go to a URL, type into a search field, press a key, wait for a result to appear, then take a screenshot, all in a few lines of code. This style made the scripts easier to read than older browser automation tools that required more setup. The project includes a proxy service built on the Serverless framework for deployment to AWS Lambda, along with full API documentation covering all the available browser commands. A browser-based demo playground was also available for trying out the API without installing anything. The README is reasonably detailed and covers installation, both local and remote usage patterns, and the full list of supported API methods.

Copy-paste prompts

Prompt 1
Show me how to use Chromeless to log into a website, wait for a dashboard to load, and take a screenshot, in TypeScript.
Prompt 2
Set up Chromeless remote mode on AWS Lambda so I can run 50 browser tests in parallel from my laptop.
Prompt 3
Convert these manual QA steps into a Chromeless script: go to a URL, fill out a form, click submit, wait for a success message, take a screenshot.
Prompt 4
What is the Puppeteer equivalent of this Chromeless script, and how do I migrate my test suite?
Open on GitHub → Explain another repo

← schickling on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.