CtrlK
BlogDocsLog inGet started
Tessl Logo

tessl/npm-puppeteer-core

A high-level API to control headless Chrome and Firefox browsers over the DevTools Protocol and WebDriver BiDi

94

1.02x
Overview
Eval results
Files

rubric.jsonevals/scenario-4/

{
  "context": "This criteria evaluates how well the engineer uses Puppeteer's window bounds management API to control browser window positioning and sizing. The focus is on correct usage of puppeteer.launch(), browser.newPage(), CDP's Browser.setWindowBounds command, and Browser.getWindowBounds command.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "Browser launch",
      "description": "Uses puppeteer.launch() to create a browser instance with appropriate configuration",
      "max_score": 15
    },
    {
      "name": "Page creation",
      "description": "Uses browser.newPage() or browser.pages() to get a page instance for window bounds manipulation",
      "max_score": 15
    },
    {
      "name": "Get window bounds",
      "description": "Uses page.browserContext().browser().pages()[0].evaluate() with window.screenX/screenY/outerWidth/outerHeight OR uses CDP session with Browser.getWindowBounds to retrieve current window position and size",
      "max_score": 25
    },
    {
      "name": "Set window position",
      "description": "Uses CDP session with Browser.setWindowBounds command to set window left and top coordinates, or equivalent method to change window position",
      "max_score": 20
    },
    {
      "name": "Set window size",
      "description": "Uses CDP session with Browser.setWindowBounds command to set window width and height, or equivalent method to change window dimensions",
      "max_score": 20
    },
    {
      "name": "Resource cleanup",
      "description": "Properly closes the browser using browser.close() to clean up resources",
      "max_score": 5
    }
  ]
}

Install with Tessl CLI

npx tessl i tessl/npm-puppeteer-core

tile.json