Documentation sectionsBrowse
HomeDocsDeploy from GitHub or ZIP

Customer documentation

Deploy from GitHub or ZIP

Create a Vercel-backed serverless site from a public GitHub repository or a clean ZIP upload.

New deployment fields

Site name
Human-readable name shown in your Serverless list and used to create the managed deployment project.
GitHub repo
Deploy from a public repository URL such as https://github.com/owner/repo.
Upload ZIP
Deploy from a ZIP of your project folder when you do not want to use GitHub.
Repository URL
Required for GitHub source. The portal downloads the repository archive and deploys the files.
Branch
Optional. Leave blank for the repository default branch, or enter the branch to deploy.
Project ZIP
Required for ZIP source. Upload the project root, not a folder full of unrelated exports.
Build and environment settings
Optional advanced area for framework, Node version, root directory, commands, output directory, dev command, and environment variables.
Deploy
Creates the managed project, uploads files, starts a production deployment, and opens the site detail page.

Choose the right source

Use GitHub when
You want repeatable deployments, a history of changes, branch control, and a cleaner support trail.
Use ZIP when
You have a simple class project, exported static files, a one-off upload, or no public repository.
Avoid ZIP when
The project is large, changes often, needs collaboration, or relies on files you forget to include.
Avoid GitHub when
The repository is private and the customer portal does not have access to it.
Branch field
Leave it blank for the default branch. Fill it only for a specific branch such as main, production, or staging.

What the portal sends to Vercel

GitHub source
The portal downloads the public GitHub repository archive, strips the wrapper folder, filters unsafe local files, then sends the deployable source to Vercel.
ZIP source
The portal reads the ZIP, removes ignored paths, builds a file manifest, and uploads the remaining source files for the Vercel deployment.
Ignored files
node_modules, .git, framework caches, .vercel, log files, and private .env files are excluded because Vercel installs and builds from clean source.
Project reuse
The portal creates or reuses the managed Vercel Project for that site name so domains and settings stay attached to the site.
Production target
Deploy creates a production deployment. Treat it like publishing the live customer-facing version of the site.
No Git integration
A pasted GitHub URL does not link your personal GitHub or Vercel account. It is a source download flow for public repositories.

GitHub vs ZIP sources

GitHub is better for repeatable source-controlled projects. ZIP upload is useful for simple static sites, class projects, exported builds, or projects that are not in a public repository. Either way, the portal prepares the source and hands it to Vercel for the production deployment.

GitHub repo
Use a public repository URL like https://github.com/owner/repo. Leave Branch blank for the default branch.
Branch
Set a branch only when you want something other than the repository default. Branch names in /tree/ URLs are also understood.
ZIP upload
Zip the project root. The portal strips common local folders and deploys the remaining source files.
Ignored ZIP paths
node_modules, .git, .next, .nuxt, .svelte-kit, .vercel, cache folders, logs, and private .env files are not deployed.
Private repos
Private repositories are not supported by the customer GitHub URL flow unless platform support is added.
Large projects
Remove dependencies, build artifacts, archives, videos, and cache folders before uploading a ZIP.

GitHub deployment checklist

  1. 1Open the public GitHub repository in your browser.
  2. 2Copy the repository URL, not a random file URL.
  3. 3Confirm the branch you want exists.
  4. 4Confirm package.json is committed if the project needs a build.
  5. 5Confirm required public assets are committed.
  6. 6Do not depend on local-only files that are not in the repository.
  7. 7Paste the repository URL in New deployment and leave Branch blank unless needed.

Prepare a ZIP upload

A clean ZIP avoids most upload and build failures. The ZIP should contain the deployable project source, package files, public assets, and config needed to build the site.

  1. 1Open the folder that contains package.json or the static site files.
  2. 2Remove node_modules, .git, .next, .vercel, cache folders, logs, local screenshots, and private .env files.
  3. 3Make sure package.json includes the build script your framework needs.
  4. 4Zip the project root so files are inside one clean project folder, not multiple unrelated folders.
  5. 5Upload the ZIP in New deployment and configure build settings only when auto-detect is not enough.

Beginner example: static site

A static site is the simplest deployment: HTML, CSS, JavaScript, images, and an index.htmlfile. It may not need a build command.

Required file
index.html at the folder that should serve the site.
Source
GitHub or ZIP upload.
Framework preset
Static / other if auto-detect does not choose correctly.
Build command
Leave blank when the files are already final.
Output directory
Leave blank or use the folder that contains index.html if the project has a nested structure.

Beginner example: React or Vite

Files needed
package.json, source files, public assets, and lockfile if available.
Framework preset
Vite for most modern React/Vite projects.
Install command
Leave blank for auto-detect or use npm install when needed.
Build command
npm run build for most Vite projects.
Output directory
dist.
Common failure
Build script missing from package.json or output directory set to the wrong folder.