EthioDeploy/Docs
HomePricing
Overview

Overview

  • Getting started
  • How deploys work

Frameworks

  • Framework guides

Configuration

  • Web services & background workers
  • Environment variables
  • Addons
  • Database & Redis tools
  • Branch deployments
  • Custom domains
  • Analytics

Domains

  • Buying a domain

Agent mode

  • Agent mode
  • Agent plans & credit

CLI

  • Command-line tool

Account

  • Team access
  • Billing

Help

  • Troubleshooting
  • Still stuck?
Deploy guides
  • Next.js
  • Node.js
  • Python
  • SvelteKit
  • Django
  • FastAPI
  • Flask
  • Express
  • Laravel
  • Go
  • Lovable
  • Bolt
  • Firebase Studio
  • Claude Code & Cursor
Compare
  • AI coding agent
  • Hosting in Ethiopia
  • vs Heroku
  • vs Vercel
  • vs Render
  • vs Railway
  • vs Fly.io
  • vs Netlify
  • Heroku alternatives
Deploy guidesFirebase Studio

Deploy a Firebase Studio app

Firebase Studio shuts down on March 22, 2027. Push your app to GitHub, add your Gemini key and Firebase config, and it runs as a normal Next.js app.

Last updated October 23, 2026

Detected by
next in package.json
Install
npm ci (from your lockfile)
Build
npm run build
Start
next start

These are the defaults. Override any of them in Settings → Build.

Export before March 22, 2027

Google stopped new Firebase Studio workspaces on June 22, 2026. On March 22, 2027 the service shuts down, and anything left in a workspace is deleted permanently. Firestore, Authentication and App Hosting keep running; only the Studio editor goes away.

Get your code out of Firebase Studio

The simplest path is pushing the workspace to GitHub:

  1. Switch from the Prototyper view to the Code view.
  2. Open Source Control (Ctrl/Cmd-Shift-G) and commit your changes.
  3. Check .gitignore includes .env, so your Gemini key isn't uploaded.
  4. Click “Publish Branch”, authorize GitHub, and create a private repository.

Alternatives: use “Move now” → “Zip and Download” in the workspace, or run npx firebase-tools@latest studio:export PATH, then push the folder to GitHub yourself. To keep your chat history, also zip /home/user/.idx/ai.

What a Studio app looks like

The App Prototyping agent builds Next.js apps with Genkit flows that call Gemini. A typical export has:

  • dev on port 9002 and genkit:dev scripts for local work, plus the standard build and start. We use build and start, so the 9002 port doesn't matter.
  • src/ai/genkit.ts and src/ai/flows/: Genkit runs inside Next.js server code, so there's no separate AI server to deploy.
  • apphosting.yaml and .idx/dev.nix: Firebase-only config. Leave them in the repo; we ignore them.

Environment variables

In Studio, your keys lived in .envand App Hosting. Add them in the project's settings on EthioDeploy:

  • GEMINI_API_KEY: the Genkit Google AI plugin reads this first (it also accepts GOOGLE_API_KEY or GOOGLE_GENAI_API_KEY). Get a key from Google AI Studio if you don't have one.
  • Any NEXT_PUBLIC_FIREBASE_* values your app reads. These are baked in at build time, so add them before the deploy.

Some newer Studio apps hardcode the Firebase config in src/firebase/config.ts and first try initializeApp()with no arguments, which only works on App Hosting. They fall back to the hardcoded config and log an “Automatic initialization failed” warning. The app works; pass the config object directly to remove the warning.

Firebase Auth and Firestore

Your Firestore data and Firebase Auth users stay in your Firebase project, and the app keeps talking to them from its new address. Two things to update:

  • In the Firebase console, go to Authentication → Settings → Authorized domains and add <project-slug>.ethiodeploy.com and any custom domain. Google sign-in fails on unlisted domains.
  • If you use App Check with reCAPTCHA, add the new domain to the reCAPTCHA key's allowed domains.

Fix the build before you rely on it

Studio templates ship next.config.ts with typescript.ignoreBuildErrors: true. The build passes, but type errors are hidden until they break at runtime. Run npm run typecheck locally (or ask the AI coding agent to fix the errors), then turn the flag off.

Placeholder images are loaded from hosts like placehold.co and picsum.photos, listed in images.remotePatterns. Swap them for your own images, and add any new image host there. Everything else in the Next.js guide applies.

Deploy

  1. Sign in with GitHub and install the EthioDeploy app on the repo.
  2. Click “New Project” and pick the repo.
  3. Watch the build in the dashboard. When the health check passes, your app is live at <project-slug>.ethiodeploy.com. Every push to the default branch redeploys, and the old version keeps serving until the new one is healthy.

Troubleshooting

AI features fail with an API key error

Cause: GEMINI_API_KEY isn't set on EthioDeploy.

Fix: Add it in Settings and redeploy.

Google sign-in fails with auth/unauthorized-domain

Cause: The new domain isn't in Firebase Authentication's authorized domains.

Fix: Add the ethiodeploy.com subdomain and any custom domain in the Firebase console.

Images fail with hostname is not configured under images

Cause: The image host isn't in next.config's images.remotePatterns.

Fix: Add the host to images.remotePatterns.

A page crashes in production but the build passed

Cause: ignoreBuildErrors hid a type error.

Fix: Run npm run typecheck, fix the errors, and turn the flag off.

A NEXT_PUBLIC_FIREBASE_ value is undefined in the browser

Cause: It wasn't set when the app was built.

Fix: Add it in Settings, then trigger a new deploy.

Still stuck? Check the deployment's build log in the dashboard, or see Troubleshooting.

Questions

When does Firebase Studio shut down?

March 22, 2027. New workspace creation and signups stopped on June 22, 2026. Existing workspaces can still be opened and exported until the shutdown, after which their data is deleted permanently.

Will my Firestore data and users be deleted?

No. Google says Firestore, Authentication, App Hosting and other Firebase services are not affected. Only the Firebase Studio development environment shuts down.

Do I have to move my hosting?

No. Firebase App Hosting is unaffected, and Google suggests Antigravity or Google AI Studio for editing. Move hosting if you want to leave Google Cloud billing, pay in Birr, or use an AI coding agent that deploys to the same place.

Can I keep editing the app with AI after moving?

Yes. EthioDeploy's agent mode reads, edits and runs your project's code in a sandbox, then opens a pull request you can review. Or edit locally with any AI editor and push to GitHub.

Ready to deploy? Sign in with GitHub and pick your repo. No Dockerfile, no YAML.

Other framework guides

Next.jsNode.jsPythonSvelteKitLovableBoltClaude Code & CursorDjangoFastAPIFlaskLaravelExpressGo

See the full docs for custom domains, env vars, addons, and billing.

On this page

  • Get your code out of Firebase Studio
  • What a Studio app looks like
  • Environment variables
  • Firebase Auth and Firestore
  • Fix the build before you rely on it
  • Deploy
  • Troubleshooting
  • Questions

Product

  • Pricing
  • Documentation
  • AI coding agent
  • Agent mode docs
  • Domains
  • Hosting in Ethiopia

Deploy guides

  • Next.js
  • Node.js
  • Python
  • SvelteKit
  • Django
  • FastAPI
  • Flask
  • Express
  • Laravel
  • Go
  • Lovable
  • Bolt
  • Firebase Studio
  • Claude Code & Cursor

Compare

  • EthioDeploy vs Heroku
  • EthioDeploy vs Vercel
  • EthioDeploy vs Render
  • EthioDeploy vs Railway
  • EthioDeploy vs Fly.io
  • EthioDeploy vs Netlify
  • Heroku alternatives

Company

  • About
  • Support
  • Contact
  • Terms
  • Privacy

EthioDeploy: agentic first development and deployment, started in Ethiopia, built for developers everywhere.