theme

package
v0.25.0 Latest Latest
Warning

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

Go to latest
Published: Mar 16, 2026 License: MIT Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ActiveTheme = Matcha

ActiveTheme is the currently active theme used for styling.

View Source
var BuiltinThemes = []Theme{
	Matcha,
	Rose,
	Lavender,
	Ocean,
	Peach,
	CatppuccinMocha,
}

BuiltinThemes lists all built-in themes in display order.

View Source
var CatppuccinMocha = Theme{
	Name:       "Catppuccin Mocha",
	Accent:     lipgloss.Color("#89B4FA"),
	AccentDark: lipgloss.Color("#74C7EC"),
	AccentText: lipgloss.Color("#1E1E2E"),
	Secondary:  lipgloss.Color("#6C7086"),
	SubtleText: lipgloss.Color("#7F849C"),
	MutedText:  lipgloss.Color("#9399B2"),
	DimText:    lipgloss.Color("#BAC2DE"),
	Danger:     lipgloss.Color("#F38BA8"),
	Warning:    lipgloss.Color("#FAB387"),
	Tip:        lipgloss.Color("#F9E2AF"),
	Link:       lipgloss.Color("#89DCEB"),
	Directory:  lipgloss.Color("#89B4FA"),
	Contrast:   lipgloss.Color("#1E1E2E"),
}
View Source
var Lavender = Theme{
	Name:       "Lavender",
	Accent:     lipgloss.Color("#B4A7D6"),
	AccentDark: lipgloss.Color("#8E7CC3"),
	AccentText: lipgloss.Color("#FFFDF5"),
	Secondary:  lipgloss.Color("240"),
	SubtleText: lipgloss.Color("241"),
	MutedText:  lipgloss.Color("243"),
	DimText:    lipgloss.Color("250"),
	Danger:     lipgloss.Color("196"),
	Warning:    lipgloss.Color("208"),
	Tip:        lipgloss.Color("214"),
	Link:       lipgloss.Color("#9BC4FF"),
	Directory:  lipgloss.Color("#B4A7D6"),
	Contrast:   lipgloss.Color("#000000"),
}
View Source
var Matcha = Theme{
	Name:       "Matcha",
	Accent:     lipgloss.Color("42"),
	AccentDark: lipgloss.Color("#25A065"),
	AccentText: lipgloss.Color("#FFFDF5"),
	Secondary:  lipgloss.Color("240"),
	SubtleText: lipgloss.Color("241"),
	MutedText:  lipgloss.Color("243"),
	DimText:    lipgloss.Color("250"),
	Danger:     lipgloss.Color("196"),
	Warning:    lipgloss.Color("208"),
	Tip:        lipgloss.Color("214"),
	Link:       lipgloss.Color("#9BC4FF"),
	Directory:  lipgloss.Color("34"),
	Contrast:   lipgloss.Color("#000000"),
}
View Source
var Ocean = Theme{
	Name:       "Ocean",
	Accent:     lipgloss.Color("#5B9BD5"),
	AccentDark: lipgloss.Color("#3A7BBF"),
	AccentText: lipgloss.Color("#FFFDF5"),
	Secondary:  lipgloss.Color("240"),
	SubtleText: lipgloss.Color("241"),
	MutedText:  lipgloss.Color("243"),
	DimText:    lipgloss.Color("250"),
	Danger:     lipgloss.Color("196"),
	Warning:    lipgloss.Color("208"),
	Tip:        lipgloss.Color("214"),
	Link:       lipgloss.Color("#9BC4FF"),
	Directory:  lipgloss.Color("#5B9BD5"),
	Contrast:   lipgloss.Color("#000000"),
}
View Source
var Peach = Theme{
	Name:       "Peach",
	Accent:     lipgloss.Color("#FAB387"),
	AccentDark: lipgloss.Color("#E0956E"),
	AccentText: lipgloss.Color("#1E1E2E"),
	Secondary:  lipgloss.Color("240"),
	SubtleText: lipgloss.Color("241"),
	MutedText:  lipgloss.Color("243"),
	DimText:    lipgloss.Color("250"),
	Danger:     lipgloss.Color("#F38BA8"),
	Warning:    lipgloss.Color("#F9E2AF"),
	Tip:        lipgloss.Color("#F9E2AF"),
	Link:       lipgloss.Color("#89B4FA"),
	Directory:  lipgloss.Color("#FAB387"),
	Contrast:   lipgloss.Color("#1E1E2E"),
}
View Source
var Rose = Theme{
	Name:       "Rose",
	Accent:     lipgloss.Color("#E8729B"),
	AccentDark: lipgloss.Color("#B5547A"),
	AccentText: lipgloss.Color("#FFFDF5"),
	Secondary:  lipgloss.Color("240"),
	SubtleText: lipgloss.Color("241"),
	MutedText:  lipgloss.Color("243"),
	DimText:    lipgloss.Color("250"),
	Danger:     lipgloss.Color("196"),
	Warning:    lipgloss.Color("208"),
	Tip:        lipgloss.Color("214"),
	Link:       lipgloss.Color("#9BC4FF"),
	Directory:  lipgloss.Color("#E8729B"),
	Contrast:   lipgloss.Color("#000000"),
}

Functions

func SetTheme

func SetTheme(name string) bool

SetTheme sets the active theme by name. Returns true if found. It searches built-in themes first, then custom themes.

Types

type Theme

type Theme struct {
	Name       string      `json:"name"`
	Accent     color.Color `json:"-"`
	AccentDark color.Color `json:"-"`
	AccentText color.Color `json:"-"`
	Secondary  color.Color `json:"-"`
	SubtleText color.Color `json:"-"`
	MutedText  color.Color `json:"-"`
	DimText    color.Color `json:"-"`
	Danger     color.Color `json:"-"`
	Warning    color.Color `json:"-"`
	Tip        color.Color `json:"-"`
	Link       color.Color `json:"-"`
	Directory  color.Color `json:"-"`
	Contrast   color.Color `json:"-"`
}

Theme defines the color palette for the application.

func AllThemes

func AllThemes() []Theme

AllThemes returns all available themes (built-in + custom).

func LoadCustomThemes

func LoadCustomThemes() []Theme

LoadCustomThemes loads custom themes from ~/.config/matcha/themes/*.json.

Jump to

Keyboard shortcuts

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