Toolverse
Wszystkie skille

gentleman-bubbletea

autor: Gentleman-Programming

Gotowe wzorce TUI dla Go — szybko buduj interfejsy instalatora w Bubbletea

Instalacja

Wybierz klienta i sklonuj repozytorium do odpowiedniego katalogu skilli.

Instalacja

Szybkie info

Wyświetlenia
2

O skillu

Gentleman-bubbletea to zbiór sprawdzonych wzorców do tworzenia interfejsów terminalowych w Go za pomocą biblioteki Bubbletea. Skill zawiera gotowe rozwiązania do zarządzania ekranami, obsługi wejścia klawiatury, nawigacji między widokami i zarządzania stanem aplikacji. Używaj go podczas pracy nad nowymi ekranami instalatora, dodawania komponentów UI z Lipgloss lub implementowania przejść między stanami. Każdy wzorzec pokazuje, jak definiować ekrany jako stałe, przechowywać stan w strukturze Model, obsługiwać zdarzenia przez Update() i tworzyć handlery dla poszczególnych ekranów.

Jak używać

  1. Zainstaluj skill gentleman-bubbletea w swoim projekcie Gentleman.Dots, umieszczając go w katalogu skills/ lub dodając referencję do repozytorium autora.

  2. Gdy dodajesz nowy ekran do instalatora, otwórz plik model.go i zdefiniuj nowy ekran jako stałą typu Screen w bloku const — każdy ekran otrzymuje unikalny identyfikator poprzez iota.

  3. Rozszerz strukturę Model w model.go o pola przechowujące stan nowego ekranu — dodaj zmienne dla danych, pozycji kursora, scrollowania lub innych informacji potrzebnych do renderowania.

  4. W funkcji Update() obsługuj nowe typy wiadomości za pomocą type switch — rozpoznaj tea.KeyMsg dla wejścia klawiatury, tea.WindowSizeMsg dla zmian rozmiaru okna i niestandardowe wiadomości dla logiki biznesowej.

  5. Utwórz dedykowany handler dla nowego ekranu (np. handleNewFeatureKeys), który zwraca parę (tea.Model, tea.Cmd) — handler obsługuje klawisze (up, down, enter) i zwraca zaktualizowany model oraz ewentualne komendy do wykonania.

  6. Renderuj ekran w funkcji View(), używając Lipgloss do stylizacji — odwołuj się do pól Model, aby wyświetlić bieżący stan, pozycję kursora i dostępne opcje.

Podobne skille