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

# Choose how to build your social experience

> Decide whether to launch with a prebuilt UIKit surface or build a differentiated experience directly on the social.plus SDK.

Before your agent writes code, choose how much of the experience your app needs to own. Vise can inspect your project and recommend a path, but you make the final product decision.

## Ask your agent for a recommendation

```text theme={null}
Using Vise, inspect this app and recommend whether this feature should use
social.plus UIKit or a custom UI built on the SDK. Explain the tradeoffs for
our existing design system and target screen. Don't change code yet.
```

## Compare the two paths

| Consideration       | UIKit                                                     | Custom SDK UI                                                |
| ------------------- | --------------------------------------------------------- | ------------------------------------------------------------ |
| Best fit            | A standard feed, chat, community, or story experience     | A differentiated layout, workflow, or interaction model      |
| Fastest route       | Yes — start from prebuilt social.plus screens             | No — your app owns the presentation and behavior             |
| Design control      | Theme and customize within UIKit's supported levels       | Full control through your app's components and design system |
| SDK responsibility  | Mostly configuration and app-owned integration boundaries | Your app owns SDK queries, lifecycle, state, and UI behavior |
| Ongoing maintenance | Follow UIKit releases and supported extension points      | Maintain the complete app-owned implementation               |

Choose **UIKit** when the desired experience is close to a standard social surface and speed matters most. Choose a **custom SDK UI** when the interaction itself differentiates your product or must fit an established app-specific workflow.

<Info>
  A mixed approach is possible, but it should be an explicit architecture decision. Do not start with UIKit and quietly replace standard behavior with raw SDK calls during implementation.
</Info>

## Decisions to make before implementation

Whichever path you choose, expect your agent to confirm:

* the feature and capabilities that are in scope
* the screen or route where it belongs
* the social.plus region and identity source
* where the feed, community, channel, or other target comes from
* the design constraints and runtime environment the finished work must satisfy

Once those decisions are clear, ask the agent to record the agreed outcome and begin implementation.

## Continue with your chosen path

<CardGroup cols={2}>
  <Card title="Launch a standard social experience" icon="window" href="/ai-mcp/vise/uikit-quickstart">
    Use a prebuilt UIKit surface with the lightest customization that fits.
  </Card>

  <Card title="Build a custom social experience" icon="code" href="/ai-mcp/vise/sdk-custom-ui">
    Build a differentiated, app-owned experience directly on the SDK.
  </Card>
</CardGroup>
