From b8bfaffda1718a5466526415e396ca8021ccc916 Mon Sep 17 00:00:00 2001 From: Sparticuz Date: Thu, 9 Feb 2023 10:21:16 -0500 Subject: [PATCH] Add production-dependency example --- .gitignore | 1 + examples/production-dependency/index.js | 30 +++++++++++++++++++++ examples/production-dependency/package.json | 17 ++++++++++++ 3 files changed, 48 insertions(+) create mode 100644 examples/production-dependency/index.js create mode 100644 examples/production-dependency/package.json diff --git a/.gitignore b/.gitignore index 5d12c95..d021f3d 100644 --- a/.gitignore +++ b/.gitignore @@ -10,3 +10,4 @@ _/amazon/samconfig.toml _/amazon/.aws-sam *.tar *.tgz +examples/**/package-lock.json diff --git a/examples/production-dependency/index.js b/examples/production-dependency/index.js new file mode 100644 index 0000000..3916263 --- /dev/null +++ b/examples/production-dependency/index.js @@ -0,0 +1,30 @@ +const puppeteer = require("puppeteer-core"); +const chromium = require('@sparticuz/chromium'); + +const handler = async () => { + try { + const browser = await puppeteer.launch({ + args: chromium.args, + defaultViewport: chromium.defaultViewport, + executablePath: await chromium.executablePath(), + headless: chromium.headless, + ignoreHTTPSErrors: true, + }); + + const page = await browser.newPage(); + + await page.goto("https://www.example.com", { waitUntil: "networkidle0" }); + + console.log("Chromium:", await browser.version()); + console.log("Page Title:", await page.title()); + + await page.close(); + + await browser.close(); + + } catch (error) { + throw new Error(error.message); + } +}; + +handler(); diff --git a/examples/production-dependency/package.json b/examples/production-dependency/package.json new file mode 100644 index 0000000..31da53e --- /dev/null +++ b/examples/production-dependency/package.json @@ -0,0 +1,17 @@ +{ + "name": "chromium-production-dependency", + "version": "0.0.0", + "description": "This package demonstrates using @sparticuz/chromium as a production dependency. WARNING: This package is over 50 megabytes and will likely not deploy using anything other than self-host", + "license": "ISC", + "author": { + "name": "Kyle McNally" + }, + "main": "index.js", + "scripts": { + "test": "node index.js" + }, + "dependencies": { + "@sparticuz/chromium": "110.0.0", + "puppeteer-core": "19.6.3" + } +}