---
title: "Deploy Rectify"
description: "Deploy a website you can edit by drawing on it."
category: "Other"
url: https://railway.com/deploy/rectify
---

# Deploy Rectify

Deploy a website you can edit by drawing on it.

**[Deploy Rectify on Railway](https://railway.com/template/rectify)**

- **Creator:** My Projects
- **Category:** Other
- **Total deploys:** 2

## Template content

### rectify

- **Image:** ghcr.io/wenig/rectify:latest
- **Health check:** /_platform/health
- **Public domain:** Yes

## Documentation

# Deploy and Host Rectify on Railway

Rectify is a self-hosted, LLM-powered website editor for static sites. Log in, draw a box over any element on your live page, and describe the change in plain English — Rectify's agent finds the real source file, edits the HTML, CSS, or JS directly, and the page updates. No SaaS, no lock-in.

## About Hosting Rectify

Rectify runs as a single Docker container. It serves your website as a static site and layers an owner-only editing overlay on top — visitors only ever see the published page, never the editing UI. On first boot it seeds a bundled starter site into a persistent volume mounted at `/site`; bring your own content by populating that volume. All configuration is done through environment variables: set your owner password, a session signing key, and an LLM provider key. Rectify routes every edit through LiteLLM, so it works with any reachable model — Anthropic, OpenAI, or a self-hosted Ollama instance — letting you control both where your site runs and which model powers your edits.

## Common Use Cases

- **Personal website or portfolio** — Make quick copy or layout tweaks directly in the browser without opening a code editor or redeploying. Draw a box around an element, describe what you want, and the source file is updated for you.
- **Indie landing page or product site** — Keep a live marketing page current by updating pricing, headlines, or calls to action in plain language, with every edit tracked and reversible via the built-in Undo.
- **Documentation, blog, or content site** — Edit static HTML pages in place by describing the change you want, with every edit tracked and reversible via the built-in Undo.

## Dependencies for Rectify Hosting

- **Persistent volume mounted at `/site`** — Rectify reads and writes your site files from `SITE_DIR` (default `/site`). Without a persistent volume, every edit is lost when the container restarts. Attach a Railway volume at `/site` to keep your content across deploys.
- **LLM provider API key** — Rectify routes all edit requests through LiteLLM, so it works with Anthropic, OpenAI, or any compatible provider. Set `LLM_MODEL_ID` (e.g. `anthropic/claude-sonnet-4-6`) and `LLM_API_KEY`. For a custom or self-hosted provider such as Ollama, optionally set `LLM_API_BASE` to its endpoint.

### Deployment Dependencies

- [Rectify on GitHub](https://github.com/wenig/rectify) — source code, issue tracker, and full configuration reference
- [LiteLLM](https://docs.litellm.ai/) — the LLM routing layer Rectify uses; supports Anthropic, OpenAI, Ollama, and more
- [smolagents](https://github.com/huggingface/smolagents) — the agentic framework powering Rectify's code-editing agent
- [Railway Volumes](https://docs.railway.app/reference/volumes) — how to attach the persistent volume Rectify needs at `/site`

### Implementation Details

The minimum environment variables to boot:

```
OWNER_PASSWORD=      # required — the server won't start without it
LLM_MODEL_ID=anthropic/claude-sonnet-4-6   # any LiteLLM model id
LLM_API_KEY=sk-...                         # your provider's API key
```

Two optional variables are worth setting:

```
SECRET_KEY=          # keeps owner sessions alive across restarts
LLM_API_BASE=http://...                    # endpoint for a custom/self-hosted provider (e.g. Ollama)
```

Without `SECRET_KEY`, a random key is generated on each boot and you'll be logged out on every redeploy. The container listens on port `8080`.

Rectify exposes a health check at `GET /_platform/health`, which returns `{"ok": true, "site": ""}`. Railway uses this automatically — no extra configuration needed.

On first boot, Rectify seeds the volume with a bundled starter site. To use your own content, write your files into `SITE_DIR` after the first boot via a Railway shell session.

## Why Deploy Rectify 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 Rectify 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/rectify
