charmbracelet / charmbracelet/bubbles

Feature request: Creating overarching interface for all ui component models

Open
#371 3 comments 2 reactions 0 assignees View on GitHub
Dominant language
Go
Stars
8.9k
Forks
457
Avg merge
1d 18h
Merged PRs (30d)
5

Description

I want to create an array of different bubbles UI components. The issue I've come across is that there is no great way to create an interface to group all of the components because each component exists as a separate package with each Model struct registered as separate type.

I was wondering why Init function isn't implemented for each component as such:

```go
func (m Model) Init() tea.Cmd {
return nil
}
```

And change the output type for the Update function:

```go
func (m Model) Update(msg tea.Msg) (tea.Model, tea.Cmd) {
...
}
```

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.