@e2e-dev/lightpanda
Lightpanda, the open-source headless browser, for
e2e: web({ browser: lightpanda() })
runs a web target in a lightpanda serve the provider starts for each
worker slot and stops with the run.
Install
npm install --save-dev @e2e-dev/lightpanda
brew install lightpanda-io/browser/lightpanda
Usage
import type { E2EConfig } from 'e2e';
import { web } from '@e2e-dev/web';
import { lightpanda } from '@e2e-dev/lightpanda';
export default {
targets: [{ engine: web({ browser: lightpanda({ loadResources: ['iframe'] }) }), app: { url: 'http://localhost:3000' } }],
workers: 4,
} satisfies E2EConfig;
The binary comes from binary, LIGHTPANDA_PATH in the run's environment,
or lightpanda on PATH, ~/.lightpanda, or ~/.local/bin.
loadResources passes --load-resources for iframe, image, and
stylesheet; args adds any other serve flag. A server already running,
such as the Docker image in CI, is a web({ connect }) target instead.
Lightpanda has no layout engine: locators, assertions, and agent steps on the accessibility tree work, while drags, dialogs, downloads, scrolling, and session restore do not. The full list lives at e2e.com/docs/integrations/lightpanda.
License
Apache-2.0