---
title: "Deploy OpenVid"
description: "Video Editor, professional demos and 3D mockups in seconds, in your browser"
category: "Other"
url: https://railway.com/deploy/openvid
---

# Deploy OpenVid

Video Editor, professional demos and 3D mockups in seconds, in your browser

**[Deploy OpenVid on Railway](https://railway.com/template/openvid)**

- **Category:** Other

## Template content

### openvid

- **Source:** iqbalexperience/openvid
- **Public domain:** Yes

## Documentation

# Deploy and Host OpenVid on Railway

OpenVid is a browser-based video recording, editing, and demo creation application built with Next.js. It enables users to record their screen or upload videos, apply professional device mockups, cinematic zooms, 3D effects, custom backgrounds, and export high-quality videos—all without requiring desktop software.

## About Hosting OpenVid

Hosting OpenVid on Railway provides a simple way to deploy a production-ready Next.js application with automatic builds, HTTPS, and public networking. Railway manages the infrastructure while allowing you to configure the external services OpenVid relies on, including Supabase for backend services and media storage, GitHub authentication, and stock media providers such as Pexels, Pixabay, and Unsplash. Video rendering and editing are performed directly in the user's browser using FFmpeg.wasm and modern web technologies, significantly reducing server-side processing requirements. Railway also offers centralized environment variable management, automatic deployments from GitHub, and scalable infrastructure, making it an excellent platform for hosting OpenVid.

## Common Use Cases

* Product demos and software walkthroughs
* Marketing videos and social media content creation
* Screen recording and professional video mockup generation

## Dependencies for OpenVid Hosting

* Supabase (required)
* GitHub Personal Access Token
* Pexels API
* Pixabay API
* Unsplash API

### Deployment Dependencies

| Resource                      | URL                                               |
| ----------------------------- | ------------------------------------------------- |
| GitHub Repository             | https://github.com/CristianOlivera1/openvid       |
| Supabase                      | https://supabase.com                              |
| GitHub Personal Access Tokens | https://github.com/settings/tokens                |
| Pexels API                    | https://www.pexels.com/api/                       |
| Pixabay API                   | https://pixabay.com/api/docs/                     |
| Unsplash Developers           | https://unsplash.com/developers                   |
| Railway Networking            | https://docs.railway.com/guides/public-networking |

### Implementation Details

#### Docker

No Docker image or Dockerfile is documented.

Railway automatically builds the Next.js application during deployment.

#### Public Networking

Configure the service with an HTTP Proxy.

| Setting     | Value      |
| ----------- | ---------- |
| Proxy Type  | HTTP Proxy |
| Target Port | 8080      |

#### Environment Variables

Add the following variables in **Railway → Service → Variables**.

| Variable                        | Required | Description                                                                    |
| ------------------------------- | :------: | ------------------------------------------------------------------------------ |
| `NEXT_PUBLIC_GITHUB_TOKEN`      |    Yes   | GitHub Personal Access Token used by the application.                          |
| `NEXT_PUBLIC_SITE_URL`          |    Yes   | Public URL of the deployed application. Use Railway's generated public domain. |
| `NEXT_PUBLIC_SUPABASE_URL`      |    Yes   | URL of your Supabase project.                                                  |
| `NEXT_PUBLIC_SUPABASE_ANON_KEY` |    Yes   | Public anonymous API key for your Supabase project.                            |
| `PEXELS_API_KEY`                |    Yes   | API key for the integrated Pexels stock media library.                         |
| `PIXABAY_API_KEY`               |    Yes   | API key for Pixabay media search.                                              |
| `UNSPLASH_ACCESS_KEY`           |    Yes   | Access key for the Unsplash API.                                               |
| `UNSPLASH_SECRET_KEY`           |    Yes   | Secret key associated with your Unsplash application.                          |

Raw Editor example:

```env
# GitHub
NEXT_PUBLIC_GITHUB_TOKEN=ghp_xxxxxxxxxxxxxxxxxxxxxxxxx

# Railway Domain
NEXT_PUBLIC_SITE_URL=https://${{RAILWAY_PUBLIC_DOMAIN}}

# Supabase
NEXT_PUBLIC_SUPABASE_URL=https://your-project.supabase.co
NEXT_PUBLIC_SUPABASE_ANON_KEY=your-anon-key

# Stock Media APIs
PEXELS_API_KEY=your-pexels-key
PIXABAY_API_KEY=your-pixabay-key
UNSPLASH_ACCESS_KEY=your-unsplash-access-key
UNSPLASH_SECRET_KEY=your-unsplash-secret-key
```

##### Configuring External Services

**GitHub**

Generate a Personal Access Token from your GitHub account with the permissions required by the application, then add it as `NEXT_PUBLIC_GITHUB_TOKEN`.

**Railway Domain**

After deployment, generate a Railway domain from **Settings → Networking** and set:

```text
NEXT_PUBLIC_SITE_URL=https://${{RAILWAY_PUBLIC_DOMAIN}}
```

Using Railway's reference variable automatically updates the public URL if your domain changes.

**Supabase**

Create a Supabase project and copy the following values from **Project Settings → API**:

* Project URL
* Anon (public) API Key

These values are required for the application's backend services.

**Pexels**

Create a developer account and generate an API key from the Pexels Developer dashboard.

**Pixabay**

Register an application with Pixabay and generate an API key for media search.

**Unsplash**

Create an application through the Unsplash Developer portal and copy both the Access Key and Secret Key.

#### Persistent Storage

A Railway Volume is **not required**.

OpenVid stores user data within the browser using IndexedDB and LocalStorage. The project documentation indicates that cloud storage integration is planned through Supabase Storage rather than the local filesystem.

#### Database

OpenVid requires a Supabase project.

Create a Supabase project and configure the required environment variables:

* `NEXT_PUBLIC_SUPABASE_URL`
* `NEXT_PUBLIC_SUPABASE_ANON_KEY`

No additional Railway database service is required unless your Supabase deployment is self-hosted.

#### Build & Start

Railway automatically detects the Next.js application and builds it during deployment.

No custom build or start commands are required.

#### Accessing the Application

After deployment:

1. Open your Railway project.
2. Navigate to **Settings → Networking**.
3. Generate a Railway domain.
4. Open the generated HTTPS URL in your browser.

The application is immediately accessible after deployment once all required environment variables have been configured.

## Why Deploy OpenVid 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 OpenVid 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) — [Jul'26] 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/openvid
