DigitalOcean App Platform
Deploy your applications to DigitalOcean App Platform via OAuth. Build and deploy Next.js and Vite React projects directly from GitHub.
Revlo uses DigitalOcean OAuth to securely connect to your DigitalOcean account and deploy applications via the App Platform.
How to Connect
- Navigate to
/integrationsin your Revlo dashboard - Find the DigitalOcean integration card and click Configure
- You'll be redirected to DigitalOcean to authorize Revlo
- Review the requested permissions and click Authorize
- You'll be redirected back to Revlo with DigitalOcean connected successfully
Revlo uses OAuth, so you don't need to create any DigitalOcean tokens or apps. Just click and authorize!
Prerequisites
DigitalOcean App Platform builds directly from GitHub repositories. You must connect both:
- Revlo's GitHub integration to sync your project files
- DigitalOcean's GitHub connection to allow App Platform to access your repository
Set up the GitHub integration first to enable repository sync.
DigitalOcean needs separate access to your GitHub account:
- Go to DigitalOcean → Apps → Settings → Source Control
- Click Connect GitHub and authorize
- Ensure the DigitalOcean GitHub App is installed and has access to your repository
Features
Quick Deploy
Deploy Next.js and Vite React applications with a single click. DigitalOcean automatically detects your framework and configures the build.
Automatic Repository Sync
Optionally sync your workspace files to GitHub before deploying, ensuring your latest code is deployed.
Environment Variables
Automatically configures environment variables for Supabase integration if enabled in your project.
Live URL
Get a live URL immediately after deployment. DigitalOcean provides a default domain with HTTPS.
How to Use
- Ensure prerequisites are met
- GitHub integration connected in Revlo
- GitHub connected to DigitalOcean (Apps → Settings → Source Control)
- Your repository exists and is accessible
- Click "Quick Deploy"Find the button in the workspace toolbar or actions menu.
- Configure deployment
- Enter your GitHub repository URL (e.g.,
https://github.com/owner/repo) - Select the branch to deploy from (default:
main) - Optionally choose an app name
- Toggle "Sync repo before deploy" to push latest files first
- Enter your GitHub repository URL (e.g.,
- DeployRevlo will create a DigitalOcean App and provide you with the live URL and dashboard link.
Troubleshooting
This is the most common error. It means DigitalOcean cannot access your GitHub repository.
- Connect GitHub to DigitalOcean (Method 1 - Via Apps Dashboard):
- Go to DigitalOcean Dashboard → Apps tab
- Click Create App button
- Under "Source", select GitHub
- Click Manage Access or Connect GitHub Account button
- Authorize DigitalOcean on GitHub
- Connect GitHub to DigitalOcean (Method 2 - Via Settings):
- Go to DigitalOcean Dashboard → Apps → Settings → Source Control
- Click Connect GitHub
- Authorize DigitalOcean to access your GitHub account
- Grant repository access via GitHub:
- Go to GitHub → Settings → Applications
- Check Authorized OAuth Apps tab - DigitalOcean should be listed here
- If not found, go to Installed GitHub Apps tab
- Find DigitalOcean in the list
- Click Configure
- Under "Repository access", select your repository or grant access to all repositories
- Verify the correct GitHub account: Make sure the GitHub account connected to DigitalOcean owns (or has access to) the repository you're trying to deploy.
If you see this error:
- Choose a different app name when deploying
- Or delete the existing app from your DigitalOcean dashboard
- App names must be unique across your DigitalOcean account
Some templates run strict TypeScript checks during build:
- Enable Sync repo before deploy — Revlo normalizes common issues like unused imports
- Or manually fix TypeScript errors in your workspace before deploying
- Common issues: unused imports in
src/App.tsx, strict null checks
If OAuth authorization fails:
- Try using a different browser or clearing your cookies
- Make sure you're logged into the correct DigitalOcean account
- Try disconnecting and reconnecting the integration from the Integrations page