# LTP Labs — GitLab Issues TUI
## Disclaimer: This is a PoC that after building a small set of features, I will rebuild it with more care.
A terminal interface for browsing and managing GitLab issues, built with ratatui.
---
## Requirements
- Rust (stable)
- glab (GitLab CLI)
---
## Installing Rust
If you do not have Rust installed, visit this [website](https://doc.rust-lang.org/cargo/getting-started/installation.html):
---
## Installing glab
glab is the GitLab CLI used to fetch issues and board data.
**macOS (Homebrew):**
```sh
brew install glab
```
**Linux:**
```sh
# Debian / Ubuntu
sudo apt install glab
# Arch
pacman -S glab
# Or download a binary from https://gitlab.com/gitlab-org/cli/-/releases
```
**Windows:**
```sh
winget install glab
```
After installing, authenticate with your GitLab account:
```sh
glab auth login
```
Follow the prompts to connect to gitlab.com or a self-hosted instance.
Verify access from inside a GitLab repository:
```sh
glab issue list
```
---
## Installing the application
After installing `cargo`, you just need to run: `cargo install glab-tui`
```sh
git clone <repository-url>
cd hello_ratatui
cargo install --path .
```
This compiles the binary and places it in `~/.cargo/bin/`, which should already be on your PATH.
Run from any directory that is a GitLab repository:
```sh
glab-tui
```
---
## Usage
The application must be run from inside a GitLab repository (or a subdirectory of one). Issues are fetched automatically in the background on launch.
**Navigation:**
| k / j or arrow keys | Move up / down |
| h / l or arrow keys | Move left / right (kanban columns) |
| Enter | Select / open detail |
| v | Toggle list and kanban view |
| f | Open sort and filter panel (only works in list)|
| r | Refresh issues |
| Esc | Go back |
| q | Quit |
In the sort and filter panel, use arrow keys to move between rows and left / right to cycle through values. Changes apply immediately.
---