UI / Components / layout / SettingsPanel

SettingsPanel

Settings tab pattern with atomic load.

Tabbed settings panel that loads all tab data atomically (one fetch, all tabs hydrated). Each tab is a self-contained section with its own save button. Use for Profile / Org / Billing / API Keys layouts.

$npx dock-ui add settings-panel

Usage

import { SettingsPanel } from "@/components/ui/settings-panel";

<SettingsPanel
  loader={() => fetchAllSettings()}
  tabs={[
    { value: "profile", label: "Profile", render: (data) => <Profile data={data} /> },
    { value: "billing", label: "Billing", render: (data) => <Billing data={data} /> },
  ]}
/>

Install

via CLI
$ npx dock-ui add settings-panel
Writes the file(s) directly to your components/ui/ folder. You own the code.
For agents
curl -L https://ui.trydock.ai/r/settings-panel.json
Returns a JSON manifest with file paths + contents. Agent-readable, LLM-fetchable.
← All components
Themes·Component kit · glossary
View on GitHub →