What this family solves
Coordinated tabs family with a low-level tab component, a canonical TabGroup path, and thin purpose-tab wrappers.
Marwes documentation
Coordinated tabs family with a low-level tab component, a canonical TabGroup path, and thin purpose-tab wrappers.
Coordinated tabs family with a low-level tab component, a canonical TabGroup path, and thin purpose-tab wrappers.
Choose the purpose wrapper that matches the meaning; use TabGroup as the deliberate primitive escape hatch.
Primary in-page navigation between related views
Grouped content sections switched without navigation
Settings categories switched within one page
Base tab group for custom panel content; the deliberate escape hatch
Choose an adapter in the verified examples. The inventory below reflects each framework package exactly.
@marwes-ui/reactContentTabs, NavigationTabs, SettingsTabs, Tab, TabGroup, TabPanel
ContentTabsProps, NavigationTabsProps, SettingsTabsProps, TabGroupItem, TabGroupProps, TabPanelProps, TabProps
@marwes-ui/vueContentTabs, NavigationTabs, SettingsTabs, Tab, TabGroup, TabPanel
ContentTabsProps, NavigationTabsProps, SettingsTabsProps, TabGroupItem, TabGroupProps, TabPanelProps, TabProps
@marwes-ui/svelteContentTabs, NavigationTabs, SettingsTabs, Tab, TabGroup, TabPanel
ContentTabsProps, NavigationTabsProps, SettingsTabsProps, TabGroupItem, TabGroupProps, TabPanelProps, TabProps
These examples come from the same fixtures verified by the repository checks.
import { NavigationTabs } from "@marwes-ui/react"
const tabs = [
{ value: "overview", label: "Overview", panel: "Account overview" },
{ value: "activity", label: "Activity", panel: "Recent account activity" },
]
export function Example() {
return <NavigationTabs label="Account" tabs={tabs} defaultActiveTab="overview" />
}<script setup lang="ts">
import { NavigationTabs } from "@marwes-ui/vue"
const tabs = [
{ value: "overview", label: "Overview", panel: "Account overview" },
{ value: "activity", label: "Activity", panel: "Recent account activity" },
]
</script>
<template>
<NavigationTabs label="Account" :tabs="tabs" default-active-tab="overview" />
</template><script lang="ts">
import { NavigationTabs } from "@marwes-ui/svelte"
const tabs = [
{ value: "overview", label: "Overview", panel: "Account overview" },
{ value: "activity", label: "Activity", panel: "Recent account activity" },
]
</script>
<NavigationTabs label="Account" {tabs} defaultActiveTab="overview" />Tab uses Marwes preset CSS and theme variables. Customize it through the theme passed to MarwesProvider; do not add a second component stylesheet. See the theming guide for configuration and token details.