---
title: "Deploy Shotlink"
description: "Shotlink is a REST API service that allows capture websites screenshots."
category: "Other"
url: https://railway.com/deploy/shotlink
---

# Deploy Shotlink

Shotlink is a REST API service that allows capture websites screenshots.

**[Deploy Shotlink on Railway](https://railway.com/template/shotlink)**

- **Creator:** YeDawa
- **Category:** Other
- **Total deploys:** 10

## Template content

### Shotlink

- **Source:** YeDawa/Shotlink

## Documentation

# Deploy and Host Shotlink on Railway

**Shotlink** is a lightweight and efficient REST API service written in Go that allows you to capture high-quality screenshots of websites programmatically. It uses Chrome Headless via `chromedp` to render dynamic pages with JavaScript, custom styles, and interactivity. Ideal for developers and automation workflows.

## About Hosting Shotlink

Hosting Shotlink involves running a Go-based web service that interfaces with Chrome Headless to process screenshot requests. Once deployed, Snaptor exposes an HTTP API endpoint where clients can send URLs and receive rendered screenshots in return. The service is stateless and lightweight, making it well-suited for deployment on container-based platforms like Railway. You’ll need to ensure a headless browser environment is available and accessible by the Go application.

## Common Use Cases

* Automating screenshot generation for dashboards or monitoring systems
* Capturing visual reports or snapshots for marketing tools
* Visual regression testing in CI/CD pipelines

## Dependencies for Shotlink Hosting

* Go runtime (version 1.20 or later recommended)
* Chrome Headless (used internally via `chromedp`)

### Deployment Dependencies

* [Go Installation](https://golang.org/doc/install)
* [Installing Chrome Headless](https://developers.google.com/web/updates/2017/04/headless-chrome)
* [Railway CLI](https://docs.railway.app/develop/cli)

### Implementation Details 

You can deploy Shotlink by building the Go binary and running it alongside a headless Chrome instance. For example:

```bash
go build -o shotlink main.go
./shotlink
```

Ensure the container or Railway environment has Chrome installed:

```bash
apt-get update &amp;&amp; apt-get install -y chromium
```

## Why Deploy Shotlink on Railway?

Railway is a singular platform to deploy your infrastructure stack. Railway will host your infrastructure so you don't have to deal with configuration, while allowing you to vertically and horizontally scale it.

By deploying Snaptor on Railway, you are one step closer to supporting a complete full-stack application with minimal burden. Host your servers, databases, AI agents, and more on Railway.




## Similar templates

- [Rocky Linux](https://railway.com/deploy/rocky-linux) — Hosted Rocky Linux 9 workspace with SSH and persistent storage. 🚀
- [Foundry Virtual Tabletop](https://railway.com/deploy/X5tR6G) — A Self-Hosted & Modern Roleplaying Platform
- [Letta Code Remote](https://railway.com/deploy/letta-code-remote) — Run a Letta Code agent 24/7. No inbound ports, just deploy.

Open this page in a browser: https://railway.com/deploy/shotlink
