package main import ( tea "github.com/charmbracelet/bubbletea" "github.com/charmbracelet/lipgloss" ) type navModel struct { style lipgloss.Style } func (m navModel) Init() tea.Cmd { return nil } func (m navModel) Update(msg tea.Msg) (tea.Model, tea.Cmd) { return m, nil } func (m navModel) View() string { nameStyle := lipgloss.NewStyle().Bold(true) blogStyle := lipgloss.NewStyle(). Bold(true). Underline(true) shortcutStyle := lipgloss.NewStyle(). Faint(true) name := nameStyle.Render("John Costa") nameShortcut := shortcutStyle.Render("(h)") blog := blogStyle.Render("Blog") blogShortcut := shortcutStyle.Render("(b)") rightSide := lipgloss.JoinHorizontal( lipgloss.Center, nameShortcut, " ", name, " ", blogShortcut, " ", blog, ) return m.style.Render(rightSide) } func createNavModel(width int) navModel { style := lipgloss.NewStyle(). BorderStyle(lipgloss.RoundedBorder()). BorderForeground(lipgloss.Color("62")) style = style.Width(width - style.GetHorizontalFrameSize()) return navModel{ style: style, } }