Getting started
Quickstart
Ship your first app with an AI agent, the CLI, or the dashboard.
There are three ways to ship your first app. Pick the one that fits how you work. They all end in the same place: an app running on Cloud Run in your Google Cloud project, with a URL.
Before you start
- You need a workspace with an active subscription. Without one, you can't create apps or deploy. See Billing.
- The workspace must be connected to a Google Cloud project. An owner does this once. See Connect Google Cloud.
- Your code must be in a Git repo. With the CLI, the repo needs a remote called
origin. - To deploy private GitHub repos, connect the Elula GitHub App. The dashboard asks you to, or run
elula github connect.
Option 1: Ask your AI coding agent
Open Claude Code, Codex, Cursor or another coding agent in your project folder and paste this prompt:
Deploy this to Elula. Install the CLI with `curl -fsSL https://elula.com/install | bash`, run `elula login`, then `elula init` and `elula deploy --no-wait`. A deploy takes a few minutes: run `elula status --wait 60` until it says Live, and tell me which step it's on each time. If anything is unclear, run `elula docs` first. Give me the live URL when it's done.
The agent installs the CLI and runs the commands. A browser window opens once so you can sign in with Google. When the build finishes, the agent gives you the URL.
See Use Elula with your AI for a longer prompt and tips.
Option 2: Use the CLI
Step 1. Install the CLI:
curl -fsSL https://elula.com/install | bash
Step 2. Sign in. A browser window opens for Google sign-in:
elula login
Step 3. In your project folder, create the app:
cd my-app elula init
elula init reads the Git remote and current branch, detects monorepos, creates the app in your active workspace, and saves the link in a .elula.json file. Add options as needed:
elula init --name my-app # pick the app name elula init --database # add a managed Postgres database elula init --type job # a batch job instead of a web service elula init --access public # anyone with the link can open it
elula init checks that the Elula GitHub App can read the repo. If it can't (the App isn't installed on the repo's owner, or wasn't given this repo), it prints and opens the GitHub page that fixes it, then waits until access is granted. Public repos can be deployed without the App.Step 4. Deploy. A first deploy usually takes 3–6 minutes. The CLI shows each step with the time so far, and the build log in between:
elula deploy
Deploying my-app. First deploys usually take 3–6 minutes. [1/4] Queued 0:02 [2/4] Building the image 0:09 [3/4] Updating Cloud Run 3:02 [4/4] Live 3:48 Deploy successful! (3:48)
To start a deploy and check on it later, run elula deploy --no-wait, then elula status --wait 60.
Step 5. Check the status and open the app:
elula status elula open
elula deploy builds the branch on your Git remote, not your local files. Commit and push first. The CLI warns you about uncommitted or unpushed changes.See Install the CLI and the Command reference for details.
Option 3: Use the dashboard
- Sign in to the Elula web app.
- Go to Apps and click New app.
- Choose Import a repo (pick a GitHub repository, or paste a public repo URL) or Start from a template (a working starter app, if your workspace has templates).
- Check the detected settings: branch, framework, root directory and port. Add environment variables if the app needs them.
- Choose access (private or public) if you're allowed to, and leave Auto-deploy on push on if you want every push to deploy.
- Under Advanced / optional, turn on Provision a PostgreSQL database if the app needs one, and pick a region.
- Click Create app.
- On the app page, click Send first deployment (or Deploy).
The app page shows the build, then the URL once the deploy succeeds.
What's next
- Add settings and secrets: Environment variables and secrets
- Control who can open the app: Private and public apps
- Watch it run: Logs and metrics
- Undo a bad deploy: Deployments and rollbacks