GitHub Deploy

Deploy straight from your GitHub repos

Connect your GitHub account, pick a repository, choose a branch, and go live in seconds. Framework projects build automatically, and auto-deploy updates your site on every push.

Private repos
Builds set up for you
Auto-deploy on push

Live in a Few Clicks

From GitHub repo to a live website — no CLI, no YAML to write. Static repos deploy as-is; source repos get a build pipeline dplooy sets up for you.

1

Connect Your GitHub Account

Click the GitHub button on your dashboard. A popup opens where you authorize Dplooy to access your repositories. You only need to do this once. The build pipeline needs permission to add a workflow file to a repo — nothing is written unless you set it up.

Authorize dplooy to access your repositories
2

Select a Repository

Browse or search through your repositories — both public and private. Click on the repo you want to deploy. Repos you have already deployed sit in a separate Already deployed tab so you can't overwrite a live project by accident — update those with Redeploy instead.

user/portfolioHTML
12
user/landing-pageJavaScript
8
user/blogCSS
3
3

Configure Your Deploy

Choose a branch, optionally set a root directory (e.g. dist/ or public/), and set a project name for your URL.

Branch:main
Root Directory:/
URL:portfolio.dplooy.com
4

Deploy & Go Live

Hit Deploy. Dplooy downloads your repo, processes your files, and serves them on a live URL with SSL — in seconds.

Deployed successfully!

https://portfolio.dplooy.com

5

Source Repo? Dplooy Sets Up the Build

If your repo needs a build (React, Vite, Astro, Nuxt, SvelteKit, Angular...), Dplooy reads your package.json, detects the framework and offers Set up build & deploy. Confirm the build command and output folder, and it commits .github/workflows/dplooy.yml to your repo and adds a Dplooy API key as an encrypted repository secret. The build runs on GitHub's servers and the output deploys to Dplooy automatically — on setup and on every future push. Removing the pipeline deletes the workflow file, the secret, and the key.

Framework detected: Vite · npm run builddist/
Every push builds and deploys — live build status in your dashboard
The workflow file is committed to your repo, so run git pull before your next push — otherwise Git rejects it as out of date.

Built for Real Workflows

Everything you need to deploy GitHub repos without leaving your browser.

Private Repos Supported

Deploy from private repositories. Your code is downloaded securely and never stored after deployment.

Any Branch

Deploy from main, staging, feature branches — whatever you want. Switch branches anytime.

Build Pipeline

Source repos build on GitHub's servers with a workflow Dplooy sets up for you — framework detected, build command pre-filled, output deployed automatically.

Auto-Deploy & Redeploy

Turn on Deploy on every push and each push updates your site. Prefer manual control? Redeploy now pulls the latest commit on demand.

Secure OAuth

We use GitHub OAuth with minimal scope. Your credentials are never stored — only a secure access token.

Multi-File Support

HTML, CSS, JS, images, fonts — everything in your repo is deployed and served with correct MIME types.

Auto-Deploy on Every Push

Turn on Deploy on every push in your project's GitHub dialog, under the Deploys tab, and every push to your branch updates the site automatically. It is off until you turn it on, and switching it on adds a webhook to your repository — no files are changed. Build pipeline projects already deploy on every push, so they don't show the toggle at all.

Prefer manual control? Static projects get a Redeploy now button that pulls the latest commit, and build pipeline projects get Rebuild & deploy, which re-runs the build on GitHub. Either way you can watch progress: the project card shows a Deploying badge while a build is running, and an Auto-deploy failed link if one fails.

1. Push to GitHub

Commit and push your changes to the same branch.

2. Auto-Deploy Kicks In

With Deploy on every push on, the push itself triggers the update. Or hit Redeploy now manually.

3. Site Updated

Same URL, fresh content. Done in seconds.

GitHub

portfolio

GITHUB

Repository
Build
Deploys

CONNECTED REPOSITORY

janedoe/portfolio
main
Last deployed 2 minutes ago

To deploy from a different repository or branch, use Deploy from GitHub in the dashboard and reuse this project's name.

Auto-deploy is on — pushes update this site
Close

Every GitHub project gets its own settings — repository info, deploy history, the Deploy on every push toggle, and the build pipeline.

Root Directory

Not every repo has its deployable files at the root. If your site lives in a subfolder, set the root directory and Dplooy will only deploy files from that path. (If your build output isn't committed at all, skip this — the build pipeline generates it for you.)

ScenarioRoot Directory
Plain HTML/CSS/JS at repo rootLeave empty (default: /)
Vite / React build outputdist
Create React App buildbuild
Next.js static exportout
Documentation subfolderdocs
Monorepo with packages/website/publicpackages/website/public

Branch Control

Deploy from any branch in your repository. This is useful for staging environments, feature previews, or deploying from a dedicated gh-pages branch.

Production

Deploy from main for your live site.

portfolio.dplooy.com → main
Staging / Preview

Deploy from develop to preview before going live.

portfolio-staging.dplooy.com → develop

Security & Privacy

We take security seriously. Here's how GitHub Deploy keeps your code safe.

OAuth with Minimal Scope

We request the "repo" and "workflow" scopes — enough to read your repositories and, only if you set up the build pipeline, commit its workflow file. We never touch your repos otherwise, and every workflow install requires your explicit click.

Token Storage

Your GitHub access token is stored securely in Firestore and used only to download repos during deployment. You can disconnect at any time from Settings.

No Code Retention

Your repo is downloaded as a ZIP, files are extracted and uploaded to hosting storage, and the ZIP is discarded. We don't store your source code.

Disconnect Anytime

Go to Settings → GitHub to disconnect your account. This revokes access and deletes the stored token immediately.

Plans & Limits

GitHub Deploy works on every plan. Upgrade for more projects and storage.

FeatureFreePlus$4.99/moPro$12.99/mo
GitHub Deploy
Private Repos
Redeploy now / Rebuild & deploy
Build Pipeline (Actions)
Deploy on every push
Total Projects325Unlimited
Max Repo Size5 MB50 MB100 MB
Total Storage50 MB500 MB5 GB
Project Expiry3 daysNeverNever

Frequently Asked Questions

Does pushing to GitHub auto-deploy my site?

Yes, if you want it to. Open your project's GitHub dialog, go to the Deploys tab and turn on Deploy on every push — dplooy adds a webhook to your repo and each push to your branch updates the site automatically. Build pipeline projects deploy on push by design and don't show the toggle at all. With it off, click Redeploy now after pushing (or Rebuild & deploy on build pipeline projects).

Can I deploy from a private repository?

Yes. When you connect your GitHub account, you authorize Dplooy with the "repo" scope which includes private repositories. All plans support private repos.

What happens if my repo doesn't have an index.html?

If Dplooy detects a source project that needs building, it offers to set up the build pipeline right in the deploy dialog. Otherwise the deploy fails with a clear error — your root directory (or repo root if not set) must contain an index.html file. If your site's HTML is in a subfolder, set the Root Directory field.

Can I deploy a React / Vite / Next.js app?

Yes. When you pick a source repo, Dplooy reads your package.json to detect the framework (Vite, Create React App, Astro, Nuxt, SvelteKit, Angular...) and offers Set up build & deploy: confirm the build command and output folder, and it commits .github/workflows/dplooy.yml to your repo along with an encrypted DPLOOY_API_KEY secret. The workflow builds on GitHub's servers and deploys the output to Dplooy on every push. Next.js works with static export (output: "export" in next.config). Committed build output still deploys directly via the Root Directory setting.

How do I disconnect my GitHub account?

Go to the Deploy from GitHub dialog and click Disconnect, or go to Settings to manage your GitHub connection. This immediately revokes access and deletes the stored token.

Does redeploying create a new project?

No. Redeploying updates the existing project in-place. Your URL, analytics, views, and all settings are preserved. The response from the API includes isRedeploy: true.

Is there a size limit for GitHub repos?

The downloaded ZIP of your repo (or subdirectory) must fit within your plan's file size limit: 5 MB on Free, 50 MB on Plus, 100 MB on Pro.

Ready to Deploy?

Ship your GitHub repo in seconds

Create a free account, connect GitHub, and deploy your first project. No credit card, no CLI, no config files.

No credit card required · Free plan includes 3 projects · Upgrade anytime