{"id":19423850,"url":"https://github.com/swizec/lambda-screenshot-as-a-service","last_synced_at":"2025-08-20T20:32:01.147Z","repository":{"id":42210589,"uuid":"158035169","full_name":"Swizec/lambda-screenshot-as-a-service","owner":"Swizec","description":"AWS Lambda Chrome Headless screenshots","archived":false,"fork":false,"pushed_at":"2024-05-24T15:39:35.000Z","size":42859,"stargazers_count":148,"open_issues_count":9,"forks_count":15,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-04-06T02:34:14.090Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Swizec.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-11-17T23:55:46.000Z","updated_at":"2025-01-16T14:09:08.000Z","dependencies_parsed_at":"2024-08-01T15:33:35.636Z","dependency_job_id":"2ea198a7-f755-4b4e-b4ed-f1d7229d3096","html_url":"https://github.com/Swizec/lambda-screenshot-as-a-service","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Swizec/lambda-screenshot-as-a-service","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Swizec%2Flambda-screenshot-as-a-service","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Swizec%2Flambda-screenshot-as-a-service/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Swizec%2Flambda-screenshot-as-a-service/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Swizec%2Flambda-screenshot-as-a-service/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Swizec","download_url":"https://codeload.github.com/Swizec/lambda-screenshot-as-a-service/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Swizec%2Flambda-screenshot-as-a-service/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":271378680,"owners_count":24749192,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-20T02:00:09.606Z","response_time":69,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-10T13:41:03.154Z","updated_at":"2025-08-20T20:32:00.855Z","avatar_url":"https://github.com/Swizec.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Puppeteer Lambda Starter Kit\n\nStarter Kit for running Headless-Chrome by [Puppeteer](https://github.com/GoogleChrome/puppeteer) on AWS Lambda.\n\nIt can use alone and also supported [Serverless Framework](https://github.com/serverless/serverless).\n\n## Download\n\n### Use alone\n\nThis is simple and don't need IAM role but you have to deploy package by yourself. Don't worry, even if you will become to use Serverless in the future, what you should do for migration is little.\n\n```\n$ git clone -o starter-kit https://github.com/sambaiz/puppeteer-lambda-starter-kit.git your_project_name\n```\n\n### Use with Serverless Framework\n\nServerless Framework can manage settings with CloudFormation and deploy.\n\n```\n$ serverless install --url https://github.com/sambaiz/puppeteer-lambda-starter-kit --name your_project_name\n```\n\n## Run on local\n\nBy executing `SLOWMO_MS=250 npm run local`, you can check the operation while actually viewing the chrome (non-headless, slowmo).\n\n## Packaging \u0026 Deploy\n\nLambda's memory needs to be set to at least 384 MB, but the more memory, the better the performance of any operations.\n\n```\n512MB -\u003e goto(youtube): 6.481s\n1536MB -\u003e goto(youtube): 2.154s\n```\n\n### chrome in package (recommended)\n\nIf you use alone, run `npm run package`, and deploy the package.zip. \n\nIf you use with Serverless, run `serverless deploy` (this runs `npm run package` when packaging).\n\n### chrome NOT in package\n\nDue to the large size of Chrome, it may exceed the [Lambda package size limit](http://docs.aws.amazon.com/lambda/latest/dg/limits.html) (50MB) depending on the other module to include. \nIn that case, put Chrome in S3 and download it at container startup so startup time will be longer.\n\nRun `npm run package-nochrome`, deploy the package.zip, and set following env valiables on Lambda.\n\n- `CHROME_BUCKET`(required): S3 bucket where Chrome is put\n- `CHROME_KEY`(optional): S3 key. default: `headless_shell.tar.gz`\n\n## Build Headless-Chrome (optional)\n\nThis kit includes Chrome built by myself because official build Chrome installed by Puppeteer has problems about running on Lambda (missing shared library etc.).\n\nIf you want to use latest chrome, run chrome/buildChrome.sh on EC2 having at least 16GB memory and 30GB volume. \nSee also [serverless-chrome](https://github.com/adieuadieu/serverless-chrome/blob/master/docs/chrome.md).\nOnce you build it, link to `headless_shell.tar.gz` in `chrome` dir.\n\n## Article\n\n[Lambda上でPuppeteer/Headless Chromeを動かすStarter Kitを作った - sambaiz-net](https://www.sambaiz.net/article/132/)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fswizec%2Flambda-screenshot-as-a-service","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fswizec%2Flambda-screenshot-as-a-service","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fswizec%2Flambda-screenshot-as-a-service/lists"}