Giggles é um framework React abrangente para a criação de aplicativos de terminal (TUI), construído sobre o Ink. De acordo com informações do repositório Giggles no GitHub, ele oferece gerenciamento de foco, roteamento de entrada, navegação de tela e temas, permitindo que os desenvolvedores se concentrem na funcionalidade principal. Inspirado no ecossistema Charmbracelet, o framework inclui componentes de UI, hooks para gerenciamento de foco e navegação, e utilitários de terminal para executar comandos shell.
O framework visa simplificar o desenvolvimento de TUI, abstraindo complexidades e oferecendo uma experiência de desenvolvimento mais direta e eficiente. Com Giggles, os desenvolvedores podem criar interfaces de terminal ricas e interativas com menos código e esforço.
Quais são os principais recursos do Giggles?
O Giggles oferece um conjunto de recursos projetados para simplificar o desenvolvimento de aplicativos de terminal:
- Gerenciamento de chaves: Cada componente gerencia suas próprias teclas, permitindo que entradas de texto, listas e painéis funcionem independentemente.
- Navegação entre visualizações: API simples para navegar entre diferentes visualizações, restaurando o foco do componente anterior ao retornar.
- Hooks e componentes: Inclui
useFocusScope,useFocusNode,FocusTrap,useNavigation, entre outros, para construir padrões de interação complexos. - Registro de keybinding: Permite que o aplicativo mostre aos usuários quais teclas executam quais ações no contexto atual.
- Biblioteca de componentes: Oferece uma variedade de componentes de UI para casos de uso de TUI, desde entradas de texto e autocomplete até listas virtuais.
- Renderização de Markdown: Suporte para renderizar Markdown no terminal, com formatação completa e suporte para blocos de código com syntax-highlighting.
- Controle de terminal: Permite entregar o controle do terminal para programas externos como
vimoulesse retomá-lo ao sair. - Aparência consistente: Oferece uma aparência padrão personalizável através de um objeto de tema.
Como começar a usar o Giggles?
Para começar a usar o Giggles, execute o comando npx create-giggles-app. A documentação da API e demonstrações estão disponíveis em giggles.zzzzion.com.
Quais componentes de UI e utilitários de terminal o Giggles oferece?
O Giggles oferece uma variedade de componentes de UI, incluindo:
- Select
- Multi Select
- Markdown
- Text Input
- Viewport
- Code Block
- Confirm
- Spinner
- Modal
- Paginator
- Autocomplete
- Command Palette
- Virtual List
- Badge
- Panel
E utilitários de terminal, como:
useShellOut: Suspende a UI e entrega o terminal para programas externos.useSpawn: Inicia um processo filho e transmite sua saída stdout/stderr para a UI.useTerminalSize: Rastreia as dimensões atuais do terminal.useTerminalFocus: Detecta quando a janela do terminal ganha ou perde o foco.