app

package
v0.1.0 Latest Latest
Warning

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

Go to latest
Published: Feb 19, 2026 License: MIT Imports: 16 Imported by: 0

Documentation

Overview

Package app implements the main Bubble Tea model that composes all UI components, wires up the watcher, timeline, and diff engine, and handles all keybindings.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type DebugLogger

type DebugLogger struct {
	// contains filtered or unexported fields
}

DebugLogger writes timestamped debug lines to a file. It is a no-op when disabled.

func NewDebugLogger

func NewDebugLogger(path string) *DebugLogger

NewDebugLogger creates a debug logger. If path is empty, logging is disabled.

func (*DebugLogger) Close

func (d *DebugLogger) Close()

Close closes the log file.

func (*DebugLogger) Enabled

func (d *DebugLogger) Enabled() bool

Enabled reports whether the logger is active.

func (*DebugLogger) Log

func (d *DebugLogger) Log(format string, args ...any)

Log writes a formatted message with a timestamp.

type Model

type Model struct {
	// contains filtered or unexported fields
}

Model is the main Bubble Tea model that composes all UI components.

func New

func New(cfg config.Config, repo *git.Repo, w watcher.Watcher, tl *timeline.Timeline, dbg *DebugLogger) (*Model, error)

New creates a new Model wired up with all dependencies.

func (*Model) Init

func (m *Model) Init() tea.Cmd

Init starts listening for watcher events and HEAD changes.

func (*Model) Update

func (m *Model) Update(msg tea.Msg) (tea.Model, tea.Cmd)

Update handles all incoming messages.

func (*Model) View

func (m *Model) View() string

View renders the full UI.

Jump to

Keyboard shortcuts

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