All Projects → sindresorhus → Pageres Cli

sindresorhus / Pageres Cli

Licence: mit
Capture website screenshots

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Pageres Cli

Bartlett
A simple Jenkins command line client to serve your needs.
Stars: ✭ 81 (-94.12%)
Mutual labels:  command-line-app
Event Target Shim
An implementation of WHATWG EventTarget interface, plus few extensions.
Stars: ✭ 89 (-93.54%)
Mutual labels:  npm-package
Airtap
Run TAP unit tests in 1789+ browsers.
Stars: ✭ 1,364 (-1.02%)
Mutual labels:  npm-package
Add Asset Webpack Plugin
Dynamically add an asset to the Webpack graph
Stars: ✭ 84 (-93.9%)
Mutual labels:  npm-package
React Native Get Sms Android
React Native module to get messages on an Android device
Stars: ✭ 89 (-93.54%)
Mutual labels:  npm-package
Ngx Api Utils
ngx-api-utils is a lean library of utilities and helpers to quickly integrate any HTTP API (REST, Ajax, and any other) with Angular.
Stars: ✭ 92 (-93.32%)
Mutual labels:  npm-package
Homebridge Pihole
Pihole switch for Homebridge
Stars: ✭ 80 (-94.19%)
Mutual labels:  npm-package
Wait For Localhost Cli
Wait for localhost to be ready from the command-line
Stars: ✭ 101 (-92.67%)
Mutual labels:  npm-package
Rollup Plugin Chrome Extension
A feature-rich solution for bundled Chrome extensions! 💯
Stars: ✭ 89 (-93.54%)
Mutual labels:  npm-package
Tplink Cloud Api
A node.js npm module to remotely control TP-Link smartplugs (HS100, HS110) and smartbulbs (LB100, LB110, LB120, LB130) using their cloud web service (no need to be on the same wifi/lan)
Stars: ✭ 96 (-93.03%)
Mutual labels:  npm-package
Node Fast Ratelimit
☔️ Fast and efficient in-memory rate-limit for Node, used to alleviate most common DOS attacks.
Stars: ✭ 84 (-93.9%)
Mutual labels:  npm-package
Forge Node App
🛠📦🎉 Generate Node.js boilerplate with optional libraries & tools
Stars: ✭ 90 (-93.47%)
Mutual labels:  npm-package
Angular File Uploader
Angular file uploader is an Angular 2/4/5/6/7/8/9/10 + file uploader module with Real-Time Progress Bar, Responsive design, Angular Universal Compatibility, localization and multiple themes which includes Drag and Drop and much more.
Stars: ✭ 92 (-93.32%)
Mutual labels:  npm-package
React Infinite Scroll Component
An awesome Infinite Scroll component in react.
Stars: ✭ 1,235 (-10.38%)
Mutual labels:  npm-package
All Keys
Get all property keys of an object including non-enumerable and inherited ones
Stars: ✭ 100 (-92.74%)
Mutual labels:  npm-package
Webhook Discord
A simple Javascript file for nicely formatting Discord webhooks
Stars: ✭ 81 (-94.12%)
Mutual labels:  npm-package
Got
🌐 Human-friendly and powerful HTTP request library for Node.js
Stars: ✭ 10,620 (+670.68%)
Mutual labels:  npm-package
Pd Select
vue components ,like ios 3D picker style,vue 3d 选择器组件,3D滚轮
Stars: ✭ 101 (-92.67%)
Mutual labels:  npm-package
Node Sonic Channel
🦉 Sonic Channel integration for Node. Used in pair with Sonic, the fast, lightweight and schema-less search backend.
Stars: ✭ 101 (-92.67%)
Mutual labels:  npm-package
Vue Csv Import
Vue.js component to select a CSV file, map the columns to fields, and post it somewhere.
Stars: ✭ 95 (-93.11%)
Mutual labels:  npm-package

pageres-cli

Capture screenshots of websites in various resolutions. A good way to make sure your websites are responsive. It's speedy and generates 100 screenshots from 10 different websites in just over a minute. It can also be used to render SVG images.

See pageres for the programmatic API and issues tracker.

Install

$ npm install --global pageres-cli

Note to Linux users: If you get a "No usable sandbox!" error, you need to enable system sandboxing.

Usage

Specify urls and screen resolutions as arguments. Order doesn't matter.

If no resolution is specified it will default to 1366x768 which is the most popular resolution.

pageres <url> <resolution>
pageres <resolution> <url>

# <url> can also be a local file path.
pageres <file> <resolution>

List multiple urls and resolutions for pageres to capture all combinations.

pageres <url> <resolution> ...

pageres https://sindresorhus.com 1024x768 1366x768 # 2 screenshots
pageres https://sindresorhus.com https://example.com 1024x768 # 2 screenshots
pageres https://sindresorhus.com https://example.com 1024x768 1366x768 # 4 screenshots

Group arguments with square brackets.

pageres [ <url> <resolution> ] [ <url> <resolution> ]
pageres [ <url> <resolution> ... ]

# Mix grouped and single arguments
pageres [ https://example.com 1024x768 1600x900 ] https://sindresorhus.com 1366x768

# Options defined inside a group will override the outer ones.
pageres [ https://example.com 1024x768 --no-crop ] https://sindresorhus.com 1366x768 --crop

Screenshots are saved in the current directory.

Examples

# Basic multi-url, multi-resolution usage
pageres https://sindresorhus.com https://example.com 1366x768 1600x900

# Override outer option within group
pageres [ https://example.com 1366x768 1600x900 --no-crop ] [ https://sindresorhus.com 1024x768 480x320 ] --crop

# Provide a custom filename template
pageres https://sindresorhus.com 1024x768 --filename='<%= date %> - <%= url %>'

# Capture a specific element
pageres https://example.com 1366x768 --selector='.page-header'

# Hide a specific element
pageres https://example.com 1366x768 --hide='.page-header'

# Capture a local file
pageres unicorn.html 1366x768

Options

--verbose, -v

Verbose output to see errors if you need to troubleshoot.

--crop, -c

Crop to the set height.

$ pageres https://sindresorhus.com 1024x768 --crop
--delay=<number>, -d

Delay screenshot capture.

$ pageres https://sindresorhus.com 1024x768 --delay=3
--filename=<template>

Custom filename.

$ pageres https://sindresorhus.com 1024x768 --filename='<%= date %> - <%= url %>'
--overwrite

Overwrite destination file if it exists. Defaults to appending (n) to the file name if --overwrite is not set.

$ pageres https://sindresorhus.com 1366x768 --overwrite
--selector=<element>

Capture DOM element.

$ pageres https://example.com 1366x768 --selector='.page-header'
--hide=<element>

Hide DOM element. Can be set multiple times.

$ pageres https://example.com 1366x768 --hide='.page-header'
--no-crop

Override a global crop option within a group.

$ pageres [ https://example.com 1366x768 --no-crop ] https://sindresorhus.com 1024x768 --crop
--css=<string>

Apply custom CSS to the webpage. Specify some CSS or the path to a CSS file.

$ pageres https://sindresorhus.com --css='body { background: red; }'
$ pageres https://sindresorhus.com --css='style.css'
--cookie=<cookie>

Browser cookie. Can be set multiple times.

$ pageres https://example.com --cookie='foo=bar'
--header=<header>

Custom HTTP request header. Can be set multiple times.

$ pageres https://example.com --header='Cache-Control: no-cache'
--username=<username>

Username for HTTP auth.

--password=<password>

Password for HTTP auth.

--scale=<number>

Scale webpage n of times.

--format=<string>

Image format. Either png (default) or jpg.

--user-agent=<string>

Custom user agent.

--transparent

Set background color to transparent instead of white if no background is set.

--darkMode

Emulate preference of dark color scheme.

Config file

You can persist your commands into a file and run it whenever with eg. sh .pageres:

# .pageres
pageres [ https://sindresorhus.com 1000x1000 --crop ] [ https://example.com 500x500 ]
pageres [ https://google.com 1000x1000 --crop ] [ https://github.com 500x500 ]

Related

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].