> ## Documentation Index
> Fetch the complete documentation index at: https://vlyai-1c28d863.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# How vly compares

> An honest, side-by-side look at vly vs Lovable, v0, Bolt, and Replit Agent. Where vly wins, where it doesn't, and how to pick the right tool for the job.

export const CompareTable = ({rows, competitors = ["Lovable", "v0", "Bolt", "Replit"]}) => <div style={{
  overflowX: "auto"
}}>
    <table className="vly-compare">
      <thead>
        <tr>
          <th>Capability</th>
          <th className="vly-self">vly.ai</th>
          {competitors.map(c => <th key={c}>{c}</th>)}
        </tr>
      </thead>
      <tbody>
        {rows.map((row, i) => <tr key={i}>
            <td>{row.label}</td>
            {[row.vly, ...competitors.map(c => row[c.toLowerCase()] || "—")].map((cell, j) => {
  const cls = cell === true || cell === "yes" ? "yes" : cell === false || cell === "no" || cell === "—" ? "no" : "warn";
  const text = cell === true ? "✓" : cell === false ? "—" : cell;
  return <td key={j} className={cls}>
                  {text}
                </td>;
})}
          </tr>)}
      </tbody>
    </table>
  </div>;

The AI app builder space is crowded. We're not going to pretend vly is the right pick for every job — it isn't. This page lays out the real tradeoffs.

## At a glance

<CompareTable
  competitors={["Lovable", "v0", "Bolt", "Replit"]}
  rows={[
{ label: "Generates frontend",          vly: true,  lovable: true,  v0: true,  bolt: true,  replit: true },
{ label: "Generates backend",           vly: true,  lovable: true,  v0: false, bolt: "Limited", replit: "Limited" },
{ label: "Built-in database",           vly: "Convex", lovable: "Supabase", v0: "—", bolt: "—", replit: "Limited" },
{ label: "Real-time sync by default",   vly: true,  lovable: false, v0: false, bolt: false, replit: false },
{ label: "Built-in auth",               vly: true,  lovable: true,  v0: false, bolt: false, replit: "Limited" },
{ label: "End-to-end TypeScript",       vly: true,  lovable: true,  v0: true,  bolt: "Possible", replit: true },
{ label: "Multiple AI agents",          vly: "Claude / Codex / Gemini", lovable: "—", v0: "—", bolt: "—", replit: "—" },
{ label: "One-click custom domain",     vly: true,  lovable: true,  v0: false, bolt: false, replit: true },
{ label: "Code export",                 vly: "Roadmap", lovable: true, v0: true, bolt: "Limited", replit: true },
{ label: "Starting price",              vly: "$3/mo", lovable: "Higher", v0: "Free + credits", bolt: "$25/mo", replit: "Variable" },
{ label: "Trustpilot",                  vly: "4.8★", lovable: "—", v0: "—", bolt: "1.4★", replit: "3.4★" },
]}
/>

## vly's strengths

<CardGroup cols={2}>
  <Card title="Real backend, day one" icon="database">
    vly ships with [Convex](/convex/overview) — a real-time database with queries, mutations, actions, scheduled functions, file storage, and vector search. No "now wire up Supabase" step.
  </Card>

  <Card title="Reactive by default" icon="zap">
    Every Convex query auto-updates on the client when underlying data changes. Building a chat, dashboard, or multiplayer app? You'd write polling logic with the others; with vly it just works.
  </Card>

  <Card title="Three agent options" icon="bot">
    Pick Claude Code for big refactors, OpenAI Codex for tight fixes, Gemini CLI for design work. Switch per prompt. Most competitors lock you into one.
  </Card>

  <Card title="Aggressive pricing" icon="dollar-sign">
    Paid plans start at \*\*$3/month** — roughly 7× cheaper than Bolt's $25 baseline. Free tier is generous enough to ship real prototypes.
  </Card>

  <Card title="Plan mode shows the diagram" icon="workflow">
    Before any code is written, vly produces a concrete plan — schema, pages, components — that you can edit. Catches misunderstandings cheaply.
  </Card>

  <Card title="End-to-end types" icon="code-2">
    The `Project` type Convex returns is the type your component consumes. No DTO mapping, no codegen step, no client/server drift.
  </Card>
</CardGroup>

## vly's weaknesses

We'd rather you know upfront:

<CardGroup cols={2}>
  <Card title="No code export (yet)" icon="download">
    Today, your app runs on vly's managed infrastructure. Code export to a self-hosted Git repo is a top community ask and is on the [roadmap](/resources/roadmap), but not yet shipped.
  </Card>

  <Card title="No native mobile" icon="smartphone">
    vly's output is a responsive web app. Native iOS/Android via React Native is in early planning, not shipped.
  </Card>

  <Card title="Backend is Convex, not Postgres" icon="database">
    If your team has deep Postgres expertise, schema patterns, or existing Postgres data, vly's Convex-first approach is a learning curve. (You can still use Postgres as an integration; it's just not the primary store.)
  </Card>

  <Card title="Web only, no desktop" icon="monitor">
    No Electron / Tauri output. Web only.
  </Card>
</CardGroup>

## When to pick vly

<CardGroup cols={2}>
  <Card title="✅ Building a SaaS MVP" icon="rocket">
    You want to ship a working multi-tenant app with auth, billing, and real-time data — fast.
  </Card>

  <Card title="✅ Internal tools" icon="briefcase">
    The CRM, dashboard, or admin panel your team needs but can't justify hiring a contractor for.
  </Card>

  <Card title="✅ Real-time / collaborative apps" icon="users">
    Chat, multiplayer, dashboards, anything that benefits from automatic data sync.
  </Card>

  <Card title="✅ Production-quality output" icon="check-circle">
    Type safety, accessibility, and security defaults that don't make a senior engineer wince.
  </Card>
</CardGroup>

## When to pick something else

<CardGroup cols={2}>
  <Card title="❌ You only need a frontend" icon="layout">
    Pick **v0**. Beautiful UI generation, no backend complexity.
  </Card>

  <Card title="❌ Your existing app is in Postgres / Django / Rails" icon="git-branch">
    vly is for net-new apps. Use **Cursor** or **Windsurf** to AI-assist your existing codebase.
  </Card>

  <Card title="❌ You need code export today" icon="download">
    Pick **Lovable** or **v0**. Both export to Git. Code export is on the vly roadmap but not shipped.
  </Card>

  <Card title="❌ Native mobile is required" icon="smartphone">
    Pick a tool with native mobile support, or build a separate React Native client against a vly-built API.
  </Card>
</CardGroup>

## Migrating in

If you're moving an existing project from another tool:

<CardGroup cols={2}>
  <Card title="From Lovable" icon="arrow-right" href="/migration/from-lovable">
    Schema porting from Supabase to Convex, prompt-style differences, deployment migration.
  </Card>

  <Card title="From v0" icon="arrow-right" href="/migration/from-v0">
    Bringing v0-generated frontend code into a vly project as a starting design system.
  </Card>

  <Card title="From Bolt" icon="arrow-right" href="/migration/from-bolt">
    Re-prompting strategies and component reuse.
  </Card>

  <Card title="From Replit" icon="arrow-right" href="/migration/from-replit">
    What translates, what doesn't, and how to bring your existing data.
  </Card>
</CardGroup>

## What people say

> "vly built our internal admin panel in an afternoon. Two engineers, one prompt session. We've used it for the next three internal tools too." — *Engineering lead, Series-B SaaS*

> "I was a Bolt user for three months. The reactive Convex backend is the unlock — I stopped writing polling logic and my apps got faster."

> "The Plan mode is the difference. Catching the schema misunderstanding *before* code is generated saves me an hour every project."

vly currently averages **4.8 / 5 on Trustpilot** across customer reviews — the highest in our peer group.

## Try it

The fastest way to compare is to build the same prompt in two tools and see what falls out.

<CardGroup cols={3}>
  <Card title="Quickstart" icon="rocket" href="/getting-started/quickstart">
    Five minutes. Same prompt you'd give Lovable / v0 / Bolt — see the difference yourself.
  </Card>

  <Card title="Browse recipes" icon="utensils-crossed" href="/recipes/overview">
    See concrete builds — multi-tenant SaaS, marketplaces, chatbots — and their full output.
  </Card>

  <Card title="Read the prompting guide" icon="message-square-code" href="/prompting/overview">
    The prompts that work in vly are slightly different from those that work in Lovable. Worth 20 minutes.
  </Card>
</CardGroup>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.