Theming

useColorMode

Manage theme state and toggle between light and dark modes with persistence.

import { useColorMode } from "saha-ui"

Uses

Manage color mode (light, dark, system) persisted to local storage with automatic DOM class toggling.

Props

NameTypeDescriptionDefault
defaultMode'light' | 'dark' | 'system'Initial color mode.'system'
storageKeystringlocalStorage key used to persist mode.'color-mode'
classNameDarkstringClass name applied on document.documentElement when dark.-
classNameLightstringClass name applied on document.documentElement when light.-

Returns

NameDescription
colorModeCurrent raw mode: 'light' | 'dark' | 'system'.
isDark / isLightBooleans for resolved mode.
setColorMode(mode)Set the color mode explicitly.
toggleColorMode()Toggle between light and dark modes.

Example

const { colorMode, toggleColorMode } = useColorMode();
toggleColorMode();

Notes

Resolves 'system' mode using prefers-color-scheme and writes preference to localStorage.
Saha UI - The Modern React Component Library