Download the project ZIP
Google's Build docs describe exporting the generated code as a ZIP for local development. In the current Build UI, open the Code view and use the download control there.
Limited-time offerPro & Max plans — 20% offSave 20% on monthly and yearly billing.
Save 20% on monthly and yearly billing.
Google AI Studio export hosting · Updated October 9, 2026
Downloaded your Google AI Studio app? Build the static frontend and turn it into a clean HTTPS preview URL for review. HTMLShare does not create a GitHub deployment, open Cloud Run, or run the app's Node server.
The review path is download → separate the browser UI → upload the built files. The Cloud Run path is for the running app.
Google's Build docs describe exporting the generated code as a ZIP for local development. In the current Build UI, open the Code view and use the download control there.
A current web app is a full-stack project by default: a React client plus a Node.js server. An Android export is Kotlin, not a website. The ZIP is source, not a finished static site.
If the screen you want to review renders without the server, follow the project's package scripts and upload the generated client output. Leave server files, secrets, and node_modules out of the archive.
ZIP index.html together with the CSS, JavaScript, and images the build produced. Put the entry file at the archive root or one folder deep.
Open the HTMLShare link yourself, then share it for layout and interaction review. Move Gemini calls, auth, and data to Cloud Run or another server host.
Treat the download as a source snapshot. Google's Build documentation, last updated August 20, 2026, says a web app includes a client and a server-side Node.js runtime. Look for package.json and the client entry before assuming the archive is a site.
A self-contained HTML page, or a client build that does not call Gemini when a visitor opens it, can be uploaded after you confirm the files are browser-ready.
Google's docs say the default web app includes a React frontend and a Node.js server. Build the client, then upload that output. HTMLShare does not start the Node process.
Runtime Gemini calls, Firestore, authentication, multiplayer state, Workspace APIs, and Kotlin Android projects need their own runtime. A static preview cannot stand in for those.
Use the package manager and script names in that project. For a typical npm React client, install dependencies, build, and upload only the generated browser files:
npm install
npm run build
# Upload the generated client output, often dist/Confirm the output folder in the build logs. Do not upload src/, server routes, node_modules/, or a .env file.
A blank screen usually means the host received source, or the page's first request needs a server that is not there. Check the archive and the browser console before rebuilding.
Package manifests, server routes, and unbuilt React files are not a website. Build the client and upload the folder that contains index.html.
If the first screen requests an API route or Gemini, the browser will fail once that server is absent. Review the static shell, or host the app where the server can run.
Check the browser console for missing CSS or JavaScript, a base path that assumes another domain, or a client-side route that was opened directly.
Android projects and server-only code will not render as a page. Confirm the archive contains a web entry file before uploading it.
GitHub sync and Cloud Run are Google's paths for continued development and for a running app. Neither is required when the job is a static review link. Build the client locally, upload the output, and send one URL.
Iterate inside Build mode, where the live preview, secrets, and server runtime are already connected.
Boundary: The app stays in AI Studio. Sharing there follows AI Studio's own access and usage rules.
Hand off a browser-ready frontend for client review, mobile QA, or a design check.
Boundary: It serves the static files you upload. It does not inject GEMINI_API_KEY or run the Node server.
Publish the full app, including server-side Gemini calls, with the API key kept in the server environment.
Boundary: This is Google's documented path when visitors need the app's runtime, not only its layout.
Open the same preview URL on a phone, or scan the QR code on the HTMLShare publish result. Check type size, tap targets, navigation, and horizontal scroll before you send the link to a client.
Preview a static page on a phoneFAQ
Download the project ZIP from the Code view, build the browser frontend if the export is source, and upload that static output to HTMLShare. Use Cloud Run when the app must keep calling Gemini or a server.
Only when the ZIP is already browser-ready HTML and assets. Current web exports are source projects, usually a React client plus a Node.js server, so build the client first.
Yes for a framework project. Run the build script in package.json and upload the generated output. A single self-contained HTML file can be uploaded as it is.
Yes for a static review link. GitHub sync is useful for continuing development, but it is not required to upload a built frontend and share the preview URL.
You can skip Cloud Run when you only need people to review the static interface. Cloud Run is still the documented place to run the server and keep the Gemini API key off the client.
Typical causes are uploading source instead of the client build, opening a route whose assets 404, or loading a page that immediately calls a Node or Gemini endpoint that is not running.
It can host the built React frontend. It does not compile the source ZIP or run the Node.js half of the app.
No. Google documents Gemini calls as server-side, with GEMINI_API_KEY kept out of client code. A static host cannot provide that server environment.
Yes, when the client needs to review the interface. Send the preview URL. If the demo depends on Gemini, auth, or saved data, use the AI Studio share flow or a server deployment instead.
Upload the static output, check it on a phone, and send one link. Keep Gemini and the Node server on a host that can store the API key.