UIs that adapt to
every user

fluidsoul analyzes user behavior, classifies users into configurable dimensions, and recommends what to show — so your app gets personal, automatically.

How it works

1

Send events

Fire events from your app whenever users do something meaningful. fluidsoul accumulates them per user.

await sendEvent(config, {
  userId: "user_123",
  eventType: "report_viewed",
  metadata: { category: "analytics" }
})
2

Configure rules

Define dimensions, signals, and thresholds in your workspace. Tell fluidsoul what matters for your app.

{
  "dimensions": [{
    "name": "user_role",
    "values": ["analyst", "exec"]
  }],
  "signals": [...]
}
3

Adapt your UI

Fetch the computed context and use it to decide what to show, hide, prioritize, or pre-configure.

const ctx = await getContext(
  config, userId
)
// ctx.user_category → "analyst"
// ctx.feature_priorities → [...]

Pricing

Free during beta. We'll announce paid plans before they launch.

$0
Free during beta
  • 10,000 events/month
  • 1 workspace
  • Full API access
  • SDK + React hooks
  • MCP server for AI agents