theme

package
v0.5.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 17, 2025 License: Apache-2.0 Imports: 2 Imported by: 0

Documentation

Overview

Package theme provides theming support for the Skills CLI UI.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Set

func Set(t Theme)

Set sets the active theme (thread-safe).

Types

type ColorPalette

type ColorPalette struct {
	// Primary accent color (e.g., cyan for Claude Code)
	Primary lipgloss.AdaptiveColor
	// Secondary accent color (e.g., blue)
	Secondary lipgloss.AdaptiveColor

	// Status colors
	Success lipgloss.AdaptiveColor
	Error   lipgloss.AdaptiveColor
	Warning lipgloss.AdaptiveColor
	Info    lipgloss.AdaptiveColor

	// Text colors
	Text         lipgloss.AdaptiveColor
	TextMuted    lipgloss.AdaptiveColor
	TextFaint    lipgloss.AdaptiveColor
	TextEmphasis lipgloss.AdaptiveColor

	// UI element colors
	Border    lipgloss.AdaptiveColor
	Highlight lipgloss.AdaptiveColor
}

ColorPalette defines the colors used by a theme.

type Palette

type Palette = ColorPalette

Palette is an alias for ColorPalette (for internal use).

type Styles

type Styles struct {
	// Message styles
	Success lipgloss.Style
	Error   lipgloss.Style
	Warning lipgloss.Style
	Info    lipgloss.Style

	// Layout styles
	Header    lipgloss.Style
	SubHeader lipgloss.Style

	// Text styles
	Bold     lipgloss.Style
	Muted    lipgloss.Style
	Faint    lipgloss.Style
	Emphasis lipgloss.Style

	// List styles
	ListItem   lipgloss.Style
	ListBullet lipgloss.Style
	Selected   lipgloss.Style
	Cursor     lipgloss.Style

	// Key-Value styles
	Key       lipgloss.Style
	Value     lipgloss.Style
	Separator lipgloss.Style

	// Progress/status styles
	Spinner  lipgloss.Style
	Progress lipgloss.Style
}

Styles contains pre-composed lipgloss styles.

type Symbols

type Symbols struct {
	Success    string
	Error      string
	Warning    string
	Info       string
	Arrow      string
	Bullet     string
	Pending    string
	InProgress string
}

Symbols defines the glyphs used for various states.

type Theme

type Theme interface {
	// Name returns the theme identifier
	Name() string
	// Palette returns the color palette
	Palette() ColorPalette
	// Styles returns pre-composed lipgloss styles
	Styles() Styles
	// Symbols returns the glyphs used for various states
	Symbols() Symbols
}

Theme defines the visual styling for the CLI.

func Current

func Current() Theme

Current returns the active theme (thread-safe).

func NewClaudeCodeTheme

func NewClaudeCodeTheme() Theme

NewClaudeCodeTheme creates a new Claude Code theme instance.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL