Quickstart
Deploy your first application with Ploy in minutes.
🚀 Quickstart
Welcome to Ploy—a self-hostable serverless deployment platform that lets you deploy web applications with automatic builds, GitHub integration, and continuous deployment.
TL;DR — Connect your GitHub repository, push your code, and Ploy handles the rest.
1 · Sign in with GitHub
- Visit the Ploy dashboard at meetploy.com (or your self-hosted instance)
- Click Sign in with GitHub
- Authorize Ploy to access your repositories
2 · Create an organization and project
- After signing in, create a new organization (or use an existing one)
- Navigate to Projects and click New Project
- Give your project a name (e.g., "my-app")
3 · Connect a GitHub repository
- Click Connect Repository in your project
- Install the Ploy GitHub App if prompted
- Select the repository you want to deploy
- Choose the branch to deploy (default:
main)
4 · Configure build settings
Ploy automatically detects most frameworks, but you can customize:
Framework Detection
Ploy automatically detects and configures:
- Next.js - Static and server-side rendering
- React - Static site generation with Vite or Create React App
- Vue - Static sites with Vite
- Nuxt - Static and server-side rendering
- Svelte/SvelteKit - Static and server-side rendering
- Astro - Static site generation
- Angular - Static site generation
- Static HTML - Plain HTML, CSS, and JavaScript
Using ploy.yaml (Recommended)
The recommended way to configure your project is by adding a ploy.yaml file to the root of your repository:
# ploy.yaml
kind: static
build: npm run build
out: distBasic configuration options:
- kind: Project type (
staticornextjs) - build: Build command (e.g.,
npm run build) - out: Output directory for built files (e.g.,
dist,build,.next)
For advanced configuration options including monorepo and base path support, see the Configuration guide.
Dashboard Configuration
If needed, you can also override settings in the Ploy dashboard:
# Build Command (optional - auto-detected)
npm run build
# Output Directory (optional - auto-detected)
dist
# Install Command (optional)
npm installEnvironment Variables
Add environment variables for your build:
- Go to Project Settings → Environment Variables
- Add key-value pairs:
API_URL=https://api.example.comNEXT_PUBLIC_API_KEY=your-key-here
5 · Deploy
Once your repository is connected:
- Automatic Deployment: Push to your configured branch
- Manual Deployment: Click Deploy in the dashboard
- Monitor Progress: Watch real-time build logs
# Push to trigger deployment
git add .
git commit -m "Initial deployment"
git push origin mainDeployment Process
Ploy will:
- Clone your repository
- Install dependencies
- Run the build command
- Upload static assets
- Generate a unique deployment URL
6 · Access your deployment
After a successful deployment:
- View your app: Click the deployment URL (e.g.,
https://my-app-abc123.ploy.app) - Share with team: Each deployment gets a unique URL
- Branch deployments: Every branch gets its own URL for testing
Example deployment URLs:
Production (main): https://my-app.ploy.app
Branch (feature): https://my-app-feature-xyz.ploy.app
PR Preview: https://my-app-pr-123.ploy.app7 · Advanced features
Custom Domains
Connect your own domain:
- Go to Project Settings → Domains
- Add your domain (e.g.,
example.com) - Configure DNS records as shown
- Wait for SSL certificate provisioning
Preview Deployments
Every push to any branch creates a preview deployment:
- Test features before merging to production
- Share previews with team members or clients
- Automatic cleanup when branches are deleted
Build Logs
Access detailed build logs:
- Click on any deployment
- View Build Logs tab
- Debug failed deployments with full output
Rollback
Quickly revert to a previous deployment:
- Go to Deployments history
- Click on a previous successful deployment
- Click Promote to Production
8 · Example Projects
Next.js App
# Create a new Next.js app
npx create-next-app@latest my-nextjs-app
cd my-nextjs-app
# Initialize git and push to GitHub
git init
git add .
git commit -m "Initial commit"
git remote add origin https://github.com/yourusername/my-nextjs-app.git
git push -u origin mainThen connect the repository in Ploy - it will auto-detect Next.js and deploy!
Vite + React App
# Create a new Vite app
npm create vite@latest my-react-app -- --template react
cd my-react-app
# Initialize git and push to GitHub
git init
git add .
git commit -m "Initial commit"
git remote add origin https://github.com/yourusername/my-react-app.git
git push -u origin mainConnect in Ploy and deploy automatically!
Static HTML Site
# Create a simple HTML site
mkdir my-static-site
cd my-static-site
echo '<!DOCTYPE html><html><body><h1>Hello Ploy!</h1></body></html>' > index.html
# Initialize git and push to GitHub
git init
git add .
git commit -m "Initial commit"
git remote add origin https://github.com/yourusername/my-static-site.git
git push -u origin mainConnect in Ploy and deploy!
9 · FAQ
10 · Next steps
- Read the Self-Hosting Guide to deploy Ploy on your infrastructure
- Check out our GitHub repository for source code
- Join our community for help and feature requests
Happy deploying! ✨
How is this guide?
Last updated on