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 account — github.com — free. You'll receive your site's full code repository.
- Vercel account — vercel.com — free tier available. Used to deploy and host your site.
- Sanity account — sanity.io — free tier available. Your CMS for managing site content.
- 15–30 minutes — Most of this is clicking through setup wizards. No coding required.
1
Set up your GitHub repository
- Create a free account at github.com if you don't have one.
- 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.
- 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.
- 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)
- Create a free account at sanity.io.
- 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). - Download your content export from your SiteForge dashboard (available on the migration completion screen). It's a single
.ndjsonfile. - In your Sanity project, go to Manage → Datasets, then import the
.ndjsonfile into your production dataset. - You'll need your Sanity Project ID and dataset name (
production) when configuring Vercel below.
3
Deploy on Vercel
- Create an account at vercel.com and connect your GitHub account.
- Click Add New → Project, then select the repository SiteForge pushed to your GitHub account.
- Before deploying, click Environment Variables and add:
NEXT_PUBLIC_SANITY_PROJECT_IDYour Sanity Project ID from Step 2NEXT_PUBLIC_SANITY_DATASETproduction - Click Deploy. Vercel will build and publish your site. This takes 1–2 minutes.
- Your site is live at a
*.vercel.appURL. 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:
- Create an account at railway.app and connect your GitHub.
- Click New Project → Deploy from GitHub repo and select your repository.
- Add the same two environment variables (NEXT_PUBLIC_SANITY_PROJECT_ID, NEXT_PUBLIC_SANITY_DATASET).
- 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.