> ## Documentation Index
> Fetch the complete documentation index at: https://docs.vibely.sh/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Native integrations

> First-party integrations: Supabase, Stripe, Razorpay, Resend, Firecrawl, Google AI

# Native integrations

These are integrations Vibely wires deeply — the agent's system prompt, templates, and tools have first-class knowledge of them. They aren't generic connector scaffolds; they're built into the engine.

First-party integrations are **App-side only.** For build-time context from the same vendor (e.g. agent-side reads of Figma, Linear, Notion while it scaffolds), use [MCP / Chat connectors](/docs/connectors/mcp).

## Supabase

The default backend for every Vibely app: auth, Postgres, Storage, Edge Functions.

**What the agent does for you:**

* Creates a Supabase project linked to your Vibely project (or connects an existing one).
* Writes migrations under `supabase/migrations/` with timestamp-prefixed filenames; pushes via `supabase db push --linked`.
* Wires `@supabase/supabase-js` with environment-aware URLs and anon keys.
* Generates row-level security (RLS) policies for tables it creates.
* Scaffolds Edge Functions when you need server-only logic (webhook handlers, scheduled jobs, secret-bearing API calls).

**Setup:** linking happens through the **Backend** drawer in the project UI. After linking, the agent has access to `supabase_setup` (link / migrate / restart) and `supabase_docs` (search docs).

**RLS by default.** New tables get a deny-all RLS policy. The agent then adds least-privilege policies for the specific access patterns your app needs. Don't disable RLS in production — Vibely's `security_scan` tool will flag it as a finding.

## Stripe

Subscriptions and one-time payments. Best for global SaaS, marketplaces, and digital goods (web only — see [Mobile App → IAP](/docs/mobile-app/native#in-app-purchases) for app-store rules).

**What the agent does:**

* Adds the `stripe` SDK to the relevant Supabase Edge Function or backend route.
* Generates a Stripe Checkout flow: server-side `checkout.sessions.create`, client-side redirect, webhook handler at `/api/stripe/webhook` for `checkout.session.completed` etc.
* Wires the user's plan / tier into Supabase so your app can gate features.
* Handles refunds, subscription updates, and the customer portal if you ask for them.

**Test mode by default.** The agent uses your Stripe test keys until you flip the project to production in the Stripe drawer.

## Razorpay

India-friendly alternative to Stripe. Same general shape — checkout, webhooks, subscriptions — with Razorpay's payment methods (UPI, netbanking, cards).

**Use Razorpay when:** primary market is India, or you need UPI / RuPay / netbanking acceptance.
**Use Stripe when:** primary market is anywhere else, or you want a single global processor.

The agent can wire both into the same app — different routes for different regions.

## Resend

Transactional email with managed deliverability.

**What the agent does:**

* Adds the `resend` SDK.
* Wires send calls into auth flows (welcome, password reset), transactional events (order confirmation, payment receipt), and any custom triggers you specify.
* Configures DKIM / SPF / DMARC against your custom email domain so messages don't land in spam.

**Bring your own domain.** Resend requires a verified domain to send from a custom address. The agent walks you through DNS records in the **Email** drawer.

## Firecrawl

Web scraping inside the agent. When `FIRECRAWL_API_KEY` is set, the `web_scrape` tool is available — useful when the agent is researching an API doc, parsing a competitor's pricing page, or pulling structured data from a public site.

For app-side scraping, use the [Firecrawl connector](/docs/connectors/catalog#firecrawl).

## Google AI

Image generation, image editing, and video generation inside the agent. With `GOOGLE_AI_API_KEY` set:

* **`image_gen`** — generate logos, hero images, illustrations during a build (e.g. Vibely asks "I'll generate a hero image — okay?").
* **`image_edit`** — modify an existing image (background remove, style transfer).
* **`video_gen`** — generate short videos from a text or image prompt.

These run during build sessions to populate `public/` assets. For runtime image generation in your app, the agent will wire a server-side route that calls Gemini directly using your own API key.

## Where secrets live

| Type                                | Where it's stored                                               |
| ----------------------------------- | --------------------------------------------------------------- |
| OAuth tokens (Gmail / Slack)        | Vibely's managed OAuth vault, scoped to your workspace          |
| Per-connector API keys you provide  | Vibely's secrets table, encrypted at rest                       |
| Stripe / Razorpay / Resend keys     | Supabase Edge Function secrets (set via `supabase secrets set`) |
| Firecrawl / Google AI (engine)      | Backend env vars — never injected into your app's code          |
| Custom secrets you add for your app | Supabase Edge Function secrets                                  |

Nothing the agent writes commits a secret to source — keys are referenced via env vars / `Deno.env.get()` (Edge Functions) / `process.env` (Node backends).
