All Projects → transitive-bullshit → puppeteer-instaquote

transitive-bullshit / puppeteer-instaquote

Licence: other
Use Puppeteer to create snazzy Instagram-like quote images and memes

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to puppeteer-instaquote

instagram-get-images
Instagram get images 🌄 (hashtags, account, locations) with puppeteer
Stars: ✭ 69 (+245%)
Mutual labels:  puppeteer
Social-Media-Automation
Automate social media because you don't have to be active on all of them😉. Best way to be active on all social media without actually being active on them. 😃
Stars: ✭ 186 (+830%)
Mutual labels:  puppeteer
puppeteer-instagram
Instagram automation driven by headless chrome.
Stars: ✭ 87 (+335%)
Mutual labels:  puppeteer
FaceAvataaars
Puppeteer Avataaars with your iPhone X (and also test cartoons using BlendShapeRecorder data)
Stars: ✭ 19 (-5%)
Mutual labels:  puppeteer
throughout
🎪 End-to-end testing made simple (using Jest and Puppeteer)
Stars: ✭ 16 (-20%)
Mutual labels:  puppeteer
personal-puppeteer
A personal web page screenshotting service. Basically, it exposes an API that I can use to generate screenshot of any URL.
Stars: ✭ 19 (-5%)
Mutual labels:  puppeteer
code2img
Open REST API to create beautiful images of code snippets with 20+ color themes and syntax highlighting support for 10+ languages.
Stars: ✭ 25 (+25%)
Mutual labels:  puppeteer
spider
A web spider framework
Stars: ✭ 25 (+25%)
Mutual labels:  puppeteer
jest-puppeteer-istanbul
Collect code coverage information from end-to-end jest puppeteer tests
Stars: ✭ 26 (+30%)
Mutual labels:  puppeteer
preact-typescript-parcel-starter
Starter with Preact - Typescript - Parcel Bundler
Stars: ✭ 51 (+155%)
Mutual labels:  puppeteer
FrodoBot
🥊Hibbett Mobile ATC bot
Stars: ✭ 18 (-10%)
Mutual labels:  puppeteer
jest-puppe-shots
A Jest plugin for creating screenshots of React components with a little help of Puppeteer
Stars: ✭ 86 (+330%)
Mutual labels:  puppeteer
leumi-leumicard-bank-data-scraper
Open bank data for Leumi bank and Leumi card credit card
Stars: ✭ 28 (+40%)
Mutual labels:  puppeteer
percy-puppeteer
Visual testing with Puppeteer and Percy
Stars: ✭ 47 (+135%)
Mutual labels:  puppeteer
nest-puppeteer
Puppeteer (Headless Chrome) provider for Nest.js
Stars: ✭ 68 (+240%)
Mutual labels:  puppeteer
instagram-liked-posts-downloader
Download liked (or all) posts from an Instagram profile.
Stars: ✭ 19 (-5%)
Mutual labels:  puppeteer
xkcd-excuse-generator
Serverless image generator that uses XKCD comic as basis for _all_ excuses!
Stars: ✭ 63 (+215%)
Mutual labels:  meme-generator
browser-pool
A Node.js library to easily manage and rotate a pool of web browsers, using any of the popular browser automation libraries like Puppeteer, Playwright, or SecretAgent.
Stars: ✭ 71 (+255%)
Mutual labels:  puppeteer
webring
“วงแหวนเว็บ” แห่งนี้สร้างขึ้นเพื่อส่งเสริมให้ศิลปิน นักออกแบบ และนักพัฒนาชาวไทย สร้างเว็บไซต์ของตัวเองและแบ่งปันการเข้าชมซึ่งกันและกัน
Stars: ✭ 125 (+525%)
Mutual labels:  puppeteer
puppeteer-assets
Measuring and monitor assets metrics using Puppeteer and Prometheus
Stars: ✭ 29 (+45%)
Mutual labels:  puppeteer

Puppeteer Instaquote

Instaquote / meme image generator using Puppeteer.

NPM Build Status JavaScript Style Guide

Install

yarn add puppeteer-instaquote

Usage

The first input is an excel spreadsheet containing two columns, one for Author and one for Quote.

The second input is a list of background images with some optional styles specific to each background image. So for a given background image, you could specify that you want to use a specific font, text color, padding (to identify the space within the output image that you want the text to fit within). It supports any CSS styles and any font from Google Fonts.

It performs auto-sizing of the content within the background image's specified padding area, so short quotes will use larger font sizes and longer quotes will automatically use smaller font sizes. This ensures that no matter what input is given, the output text will always "fit" within the desired bounds assuming those bounds have been configured correctly via the opts.styles.padding.

See demo.js for example usage.

Examples

Demo

This repo comes with a demo containing 10 quotes rendered for each of the 9 example background images (so 90 images in total for this demo). This examples use the following Google Fonts: Caveat, Sacramento, Dancing Script, Great Vibes, Rochester, and Calligraffitti.

See media/output for the full list of example output images.

To run the demo, clone this repo locally, then run yarn to install dependencies, then node demo.js to generate the output images.

API

renderInstaquote

Renders the given meme via puppeteer to an output file.

If you want to load multiple google fonts, juse specify their font-families in opts.style.fontFamily separated by commas as you normally would for CSS fonts.

The generated html page is returned as a string for debugging and batch rendering purposes.

Type: function (opts): Promise

  • opts object Configuration options
    • opts.output string Path of image file to store result
    • opts.quote string Main text (or html) of the content to render.
    • opts.author string Main text (or html) of the sub-header (content author).
    • opts.background string? Background image either as a local file path or as a URL (defaults to a transparent background).
    • opts.width number Optional width of output image (optional, default 1080)
    • opts.height number Optional height of output image (optional, default 1080)
    • opts.style object Top-level CSS styles to apply to the top-level container div. (optional, default {})
    • opts.quoteStyle object Quote / main content CSS styles to apply to the main content div. (optional, default {})
    • opts.authorStyle object Author CSS styles to apply to the author's div. (optional, default {})

License

MIT © Travis Fischer

Support my OSS work by following me on twitter twitter

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].