A Node.js library for automating Chrome locally or headless on AWS Lambda with a simple API.
Chromeless is a Node.js library for automating Chrome, allowing developers to control a browser programmatically for tasks like testing, crawling, and screenshots. It simplifies browser automation by providing a chainable API and can run Chrome locally or headless on AWS Lambda for scalable, parallel execution. The project addresses the need for efficient browser automation in integration tests and web scraping scenarios.
Developers and QA engineers who need to automate browser interactions for integration testing, web scraping, or bot development, especially those looking to run tests in parallel on serverless infrastructure.
Chromeless offers a simple, promise-based API similar to NightmareJS but leverages headless Chrome and AWS Lambda for parallel execution, significantly speeding up test suites. Its ability to run both locally and remotely provides flexibility for development and production-scale automation.
🖥 Chrome automation made simple. Runs locally or headless on AWS Lambda.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Offers an elegant, promise-based interface with commands like `goto`, `click`, and `screenshot`, making browser automation straightforward and readable.
Can run Chrome locally for development or headless on AWS Lambda for parallel processing, enabling scalable integration tests that reduce execution times significantly.
Leverages Chrome's headless mode for efficient, scriptable browser control without a GUI, ideal for automation tasks in serverless environments.
Includes a proxy service for remote execution on AWS Lambda, allowing tests to run in parallel without code changes, as demonstrated in the serverless setup guide.
Officially deprecated in favor of Puppeteer, meaning no further updates, bug fixes, or community support, which risks compatibility and security issues.
Several API methods such as `back`, `forward`, and `refresh` are marked as 'Not implemented yet' in the documentation, limiting navigation capabilities.
Deploying the remote proxy requires configuring AWS Lambda with the Serverless framework, which can be cumbersome and error-prone, as noted in troubleshooting sections about API Gateway issues.
The remote execution is tightly coupled with AWS Lambda, making it unsuitable for teams using other cloud providers or on-premises infrastructure without significant modifications.
chromeless is an open-source alternative to the following products:
Selenium is an open-source framework for automating web browsers, enabling testing of web applications across different browsers and platforms through scripting in various programming languages.
NightmareJS is a high-level browser automation library for Node.js, built on top of Electron, designed for automating tasks and testing web applications.
PhantomJS is a headless web browser scriptable with JavaScript that was commonly used for automated website testing, screen capture, and network monitoring.