A terminal user interface (TUI) application built with Bubble Tea that allows users to select and clone multiple Git repositories.
- Interactive TUI with keyboard navigation
- Multi-select repository cloning
- Help menu with keybindings
- Stylish interface using lipgloss
↑/k
- Move cursor up↓/j
- Move cursor downSpace
- Select/deselect repositoryEnter
- Clone selected repositories?
- Toggle help menuq/esc/ctrl+c
- Quit application
Repositories are defined with the following properties:
- Name
- URL
- Description
- Selection status
- Ensure you have Go installed
- Clone this repository
- Run:
go mod tidy
go build
The application will clone selected repositories to:
~/repos/personal/clone/<repository-name>
keyMap
- Defines all keyboard shortcutsrepository
- Structure for repository informationmodel
- Main application stateinitialModel()
- Sets up initial application stateUpdate()
- Handles all state updatesView()
- Renders the TUI
The interface uses lipgloss for styling with:
- Title in pink (#FF69B4)
- Centered alignment for title
- Left margin for repository list
- Cursor and checkbox indicators
- github.com/charmbracelet/bubbles
- github.com/charmbracelet/bubbletea
- github.com/charmbracelet/lipgloss
- github.com/go-git/go-git/v5
PC Load Letter
[ ] Dot_Files - All the dot files (kind of)
> [X] Tmux - Dots for tmux setup
[ ] zsh - Dots for zsh setup
? help • q quit