Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/jasonraimondi/url-to-png
Selfhosted. URL to PNG utility featuring parallel rendering using Playwright for screenshots and with storage caching via Local, S3, or CouchDB
https://github.com/jasonraimondi/url-to-png
amazon-s3 couchdb docker nestjs node playwright s3 screenshots selfhosted url-to-image url-to-png
Last synced: 4 days ago
JSON representation
Selfhosted. URL to PNG utility featuring parallel rendering using Playwright for screenshots and with storage caching via Local, S3, or CouchDB
- Host: GitHub
- URL: https://github.com/jasonraimondi/url-to-png
- Owner: jasonraimondi
- License: mit
- Created: 2018-07-30T18:47:15.000Z (over 6 years ago)
- Default Branch: main
- Last Pushed: 2024-07-13T00:33:09.000Z (6 months ago)
- Last Synced: 2025-01-10T22:12:37.280Z (11 days ago)
- Topics: amazon-s3, couchdb, docker, nestjs, node, playwright, s3, screenshots, selfhosted, url-to-image, url-to-png
- Language: TypeScript
- Homepage: https://jasonraimondi.github.io/url-to-png/
- Size: 2.76 MB
- Stars: 172
- Watchers: 5
- Forks: 28
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Security: SECURITY.md
Awesome Lists containing this project
README
URL to PNG[![GitHub License](https://img.shields.io/github/license/jasonraimondi/url-to-png)](https://github.com/jasonraimondi/url-to-png/blob/main/LICENSE)
[![GitHub Workflow Status](https://img.shields.io/github/actions/workflow/status/jasonraimondi/url-to-png/ci.yml?branch=main&style=flat-square)](https://github.com/jasonraimondi/url-to-png)
[![Docker Pulls](https://img.shields.io/docker/pulls/jasonraimondi/url-to-png)](https://hub.docker.com/r/jasonraimondi/url-to-png/tags)A URL to PNG generator over HTTP with a fairly simple API accessed via query params passed to the server.
- Generate PNG images from URLs
- Customizable image dimensions and viewport size
- Support for mobile user agent and dark mode rendering
- Caching of generated images
- Allow list for domain-specific requests
- Configurable Playwright options
- Integration with various storage providers (AWS S3, CouchDB, Filesystem)
- Prometheus metrics endpoint## Getting Started
Checkout [the docs to getting_started](https://jasonraimondi.github.io/url-to-png/getting_started/)
### Docker
Run the following command:
```
docker run --rm -p 3089:3089 ghcr.io/jasonraimondi/url-to-png
```On the hub: [Link to DockerHub](https://hub.docker.com/r/jasonraimondi/url-to-png/)
### Local Serve
Serve the project
```
git clone https://github.com/jasonraimondi/url-to-png
cd url-to-png
pnpm install
pnpm exec playwright install chromium
pnpm dev
```## Configuration
Read the [full config options](https://jasonraimondi.github.io/url-to-png/config/)
## Encryption
Learn about [encryption](https://jasonraimondi.github.io/url-to-png/encryption/)
## Metrics
Learn about [metrics](https://jasonraimondi.github.io/url-to-png/metrics/)
## Star History
[![Star History Chart](https://api.star-history.com/svg?repos=jasonraimondi/url-to-png&type=Timeline)](https://star-history.com/#jasonraimondi/url-to-png&Timeline)