Apps built with AI

Deploy a vibe-coded app to a server you own

You built it with Lovable, Bolt, v0, Cursor or Claude Code. Here is how to get it out of the builder and into production, with a database and a bill you can predict.

Checked against the product on

Step one

How do you get the code out of the builder?

Each builder says it in its own documentation. These are the facts, read on 31 October 2026, with a link to each.

How each AI builder gets code into GitHub, from its own documentation
ToolWhat its documentation saysSource
LovableExports the project to a GitHub repository and syncs both ways, one branch at a time. GitHub.com works on every plan.Lovable: GitHub
BoltCreates a private repository on main or imports one, commits each working change, and checks GitHub every 30 seconds. Your code leaves Bolt through the repository.Bolt: Git
v0Once a repository is connected it is the source of truth. v0 pushes changes to working branches, and publishing goes through a pull request.v0: GitHub
Cursor, Claude Code, CodexThe code is already on your computer. Commit and push it to GitHub.Connect them to Aria

Step two

What kind of app is it?

The answer decides what goes in aria.yaml. Every kind runs on Aria.

Four kinds of AI-built app and how each runs on Aria
Kind of appHow to tellOn Aria
A static front endNo server code, no database, no accountsA static service, beside your other apps. One server can run several websites
A front end on SupabaseThe code imports supabase-jsA web service and a supabase database, included at no extra cost. See self-hosted Supabase
A full-stack app with its own serverNext.js, Express, FastAPI or similar, with a databaseA web service and Postgres, from one aria.yaml
An app with background workQueues, scheduled jobs, WebSockets, long tasksA worker service, or a web service with realtime: true

Step three

What does the stack file look like?

A full-stack app with Postgres and one key only you have. Aria checked this file with its own validator and sized it.

Aria estimates this stack at about 2.8 GB, which fits the Starter plan (£9 a month ex VAT). With Supabase instead of Postgres it needs about 6.5 GB, so the Developer plan (£16).

OPENAI_API_KEY is required and secret, so the service waits until you type the value. Your agent never sees it.

If the repository has a Dockerfile, set dockerfile: on the service and drop install, build and start. Every field is in the reference.

aria.yaml
version: 1name: vibe-appservices:  web:    type: web    install: npm ci    build: npm run build    start: npm start    port: 3000    healthcheck: /    domain: "@"databases:  main:    type: postgresenv:  DATABASE_URL:    services: [web]    from: main.url  SESSION_SECRET:    services: [web]    generate: secret  OPENAI_API_KEY:    services: [web]    required: true    secret: true    description: Your OpenAI API key, from the OpenAI dashboard

What should you check before production?

A preview proves the app runs once. Production asks for more, and each item below has a place in aria.yaml.

  • Secrets in the code

    Move every key out of the repository. Declare it with required: true and secret: true, and type the value yourself. aria env import .env prints names, never values.

  • Keys that browsers can read

    Names that start with NEXT_PUBLIC_, VITE_ or PUBLIC_ end up in the browser bundle. Never wire a database password or a service key into one.

  • A health check

    Set healthcheck to a path that answers quickly without a login. Aria asks it whether the service is up.

  • Migrations

    A migrate command, a migrations folder or a supabase/migrations folder builds the schema on every launch and push, so nobody runs SQL by hand.

  • Backups and a restore

    Databases and volumes are backed up every night. Restore one once, on purpose, before you need it.

  • Logs and a way to look

    aria logs web --follow and aria check show what the app is doing, and Aria AI can read the same.

Two ways to work

Who does the deploying?

Aria AI, built into Aria, or the tool that wrote the app. Aria holds the risky steps either way.

1

Aria AI

The AI built into Aria. It writes aria.yaml, sets things up, reads logs and fixes things, inside the Mac app and the web dashboard.

On the Mac, your subscription

Aria finds the coding tool on your Mac, shows who it is signed in as and asks “Is this the one?”. One click and it is connected. The turns run on your own Mac.

  • Claude Code
  • Codex
  • Gemini CLI
  • Cursor

In the browser, an API key

Paste a key in AI & MCP and Aria AI works in the web dashboard, wherever you are signed in.

  • Anthropic
  • OpenAI
  • Gemini
  • OpenRouter
Connect Aria AI
2

MCP

For a coding agent working outside Aria. It calls Aria’s tools with a key that reaches one app. Run aria init or aria mcp add.

  • Claude Code
  • Cursor
  • Codex
  • Gemini CLI
  • Antigravity
Connect a coding agent
  1. Connect Aria AI

    Your subscription on the Mac or an API key in the browser. Or connect Claude Code, Cursor or Codex over MCP.

  2. Let it write aria.yaml

    It reads the repository, lists the services, databases and variables, and checks the file with Aria.

  3. You choose a plan and enter secrets

    Aria shows the memory estimate first. You pay, type the secrets and approve the launch.

  4. Push to deploy

    After the first launch a push redeploys the services it touched. A server runs up to 5 apps, so a second project can share it.

Questions about deploying an AI-built app

Where should I deploy an app built with an AI tool?

On a real server with a real database. Aria Cloud runs static sites, front ends and full apps on a private server, with Postgres, Redis or Supabase included, at one flat monthly price. One server can run several websites.

Can I host a Lovable app myself?

Lovable’s documentation says it syncs a project to GitHub in both directions, one branch at a time. Once the code is in GitHub, Aria can build it like any other repository. Check the build and the variables after the first launch.

Can I move a v0 app off Vercel?

v0’s documentation says a connected GitHub repository becomes the source of truth for the project’s code. A Next.js app from there runs on Aria as an ordinary Node server. You then connect that repository to Aria yourself.

Do I need a Dockerfile?

No. Without one, Aria builds from the install, build and start commands in aria.yaml. With one, set dockerfile in aria.yaml, because Aria does not look for it by itself. Either way the service must listen on 0.0.0.0 and read the PORT variable.

What about the database?

Declare Postgres, Redis or Supabase in aria.yaml and point a variable at it with from. Aria creates the database and fills in the address. If the code imports supabase-js, use a Supabase database, which includes Postgres, Auth, Storage and Realtime. Aria builds your schema from your migrations on every launch and push.

Is it safe to let an AI deploy for me?

Aria enforces its rules on its own servers, and they apply to Aria AI and every agent over MCP. The AI can read status and logs and save aria.yaml. Variables, launching the app, DNS records and deletes wait for you. Secret values are never shown to the agent.

Will the bill surprise me?

The server price is flat: from £9 a month ex VAT, with no charge per seat, app, database or request. The AI provider your app calls, such as OpenAI, bills you separately and Aria does not control that.

From a prototype to software people rely on

Sign up, connect the repository, and let Aria AI write the file.

Account · Terms

We’ve updated our terms.

Please read and accept the current terms of service and privacy policy to keep using Aria.