> ## Documentation Index
> Fetch the complete documentation index at: https://social-b97141fb-auto-generate-llmstxt.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Build a custom social experience

> Ask your agent for a differentiated social.plus experience built directly on the SDK and owned by your app.

Choose this path when the feature needs your own layout, workflow, or interaction model — UI your app owns, built directly on the social.plus SDK.

## What to ask

```text theme={null}
Add a social feed to this app using the social.plus SDK. Keep the UI
consistent with the existing design system, and ask me about any missing
scope, target, route, region, or identity decisions before editing.
```

## What your agent will ask you

Expect questions before any code changes. Typical ones for an app-owned surface:

* **Region** — which social.plus region your app runs in.
* **Where it lives** — the screen or route that hosts the new surface.
* **Where data comes from** — the feed or community target: from a route, app state, user selection, SDK discovery, or a create flow. Vise won't let the agent hard-code an invented ID.
* **Scope** — which post types, composer options, comments, reactions, and moderation behavior are in or out.

<Warning>
  Don't paste API keys or server-issued tokens into the chat. Point the agent at your app's ignored environment/configuration pattern instead.
</Warning>

## What "done" looks like

Before the agent calls this finished, Vise holds it to:

* Real SDK APIs — actual types and field names, not remembered ones.
* The platform lifecycle — realtime data subscriptions and cleanup, pagination, session renewal, and user switching handled correctly.
* The whole feature — loading, empty, and error states, not just the happy path.
* Recorded decisions — your scope answers are part of the contract, so a reviewer can see what was agreed.

Then run the app and look at it. Passing checks prove the code is right; only a real launch proves the screen mounts, authenticates, and fills with your tenant's data. Your agent can assess that launch and record it as runtime evidence — or record an explicit waiver if no device is available.

## Related

<CardGroup cols={2}>
  <Card title="Choose an integration path" icon="route" href="/ai-mcp/vise/choose-integration-path">
    Compare custom SDK ownership with a prebuilt UIKit surface.
  </Card>

  <Card title="Launch a standard social experience" icon="window" href="/ai-mcp/vise/uikit-quickstart">
    Prefer a prebuilt surface? Launch with UIKit instead.
  </Card>
</CardGroup>
