Deploy a local folder or .zip without a Git repository - from the Create page, from Claude via the MCP server, or from VS Code.
Deploy from an upload
Not everything lives in a repository. The Upload tile deploys a project from an archive of your local folder - same detection, same build, same live URL, no Git required.
Three ways to upload#
- The Create page. Pick the Upload tile, drop a
.zipof the project, and confirm the detected settings like any other app. - Claude. Open Claude in the project directory and ask it to deploy - the MCP server packages the folder, uploads it, and deploys.
- VS Code. Run
/deployin Copilot Chat with the Light Cloud extension installed.
When you deploy from Claude or VS Code, variables in your local .env file are read and set on the app for you.
What's different from a repository app#
An uploaded app is a normal application - environments, logs, metrics, domains, variables all work - with one difference: there is no repository, so nothing deploys by itself.
- No webhooks. Git automation doesn't apply; there is no branch to watch.
- Ship by uploading again. Each new upload builds and deploys like a push would. From Claude or VS Code that is one command, because the project config file remembers which app the folder belongs to.
- No preview-per-branch. You can still create extra environments and deploy uploads to them - it's just not automatic.
Tip
Uploads are the fastest way to put a prototype online, but once a project is real, connect a repository - you get deploy-on-push, previews per branch, and a commit trail on every deploy for free. See Deployments.
What gets uploaded#
The project folder, minus what clearly isn't source: dependency directories like node_modules are ignored and restored by the install command during the build. Secrets should travel as environment variables, not files in the archive.