← SiteForge

SiteForge

Self-Hosting Migration Guide

Your site was built on a stack you own: Next.js, Sanity, and GitHub. Moving to your own accounts is straightforward. This guide walks you through every step.


What you'll need

  • GitHub accountgithub.com — free. You'll receive your site's full code repository.
  • Vercel accountvercel.com — free tier available. Used to deploy and host your site.
  • Sanity accountsanity.io — free tier available. Your CMS for managing site content.
  • 15–30 minutesMost of this is clicking through setup wizards. No coding required.
1

Set up your GitHub repository

  1. Create a free account at github.com if you don't have one.
  2. Go to Settings → Developer Settings → Personal access tokens → Tokens (classic). Generate a new token with the reposcope checked. Copy it — you'll paste it into the SiteForge migration screen.
  3. When you click Migratein your dashboard, SiteForge uses that token to create a new private repository in your account and push all your site's code into it automatically.
  4. You'll receive the full repository URL once migration completes. Keep it — you'll need it in the next steps.
2

Set up Sanity (your content system)

  1. Create a free account at sanity.io.
  2. Create a new project. Give it any name — we suggest your business name. Note the Project ID shown in the project dashboard (a short string like abc123de).
  3. Download your content export from your SiteForge dashboard (available on the migration completion screen). It's a single .ndjson file.
  4. In your Sanity project, go to Manage → Datasets, then import the .ndjson file into your production dataset.
  5. You'll need your Sanity Project ID and dataset name (production) when configuring Vercel below.
3

Deploy on Vercel

  1. Create an account at vercel.com and connect your GitHub account.
  2. Click Add New → Project, then select the repository SiteForge pushed to your GitHub account.
  3. Before deploying, click Environment Variables and add:
    NEXT_PUBLIC_SANITY_PROJECT_IDYour Sanity Project ID from Step 2
    NEXT_PUBLIC_SANITY_DATASETproduction
  4. Click Deploy. Vercel will build and publish your site. This takes 1–2 minutes.
  5. Your site is live at a *.vercel.app URL. To connect your own domain, go to Project Settings → Domainsand follow Vercel's instructions to point your DNS.

Alternative: Railway

If you prefer Railway (railway.app) over Vercel, the process is nearly identical:

  1. Create an account at railway.app and connect your GitHub.
  2. Click New Project → Deploy from GitHub repo and select your repository.
  3. Add the same two environment variables (NEXT_PUBLIC_SANITY_PROJECT_ID, NEXT_PUBLIC_SANITY_DATASET).
  4. Railway auto-detects Next.js and deploys. Your site is live within minutes.

After migration: what changes

  • Your code, content, and domain are entirely yours.
  • You're no longer paying SiteForge's $40/month hosting fee.
  • You manage your own Vercel and Sanity billing directly.
  • SiteForge is no longer responsible for uptime, deployments, or CMS functionality.
  • Your SiteForge dashboard remains accessible for 48 hours after migration, then closes.

Need help?

Questions during migration? Email support@gositeforge.com within your 48-hour window and we'll help you through it. After that, support is available through our standard paid plans.


SiteForge — gositeforge.com — This document is provided as a courtesy and may be updated as the platform evolves. The current version is always at gositeforge.com/self-hosting.