An open API service indexing awesome lists of open source software.

https://github.com/mgldvd/task-gui

Task Runner GUI (taskg) is a minimal terminal UI wrapper around the excellent Task project: https://taskfile.dev/
https://github.com/mgldvd/task-gui

cli go taskfile tui

Last synced: 3 months ago
JSON representation

Task Runner GUI (taskg) is a minimal terminal UI wrapper around the excellent Task project: https://taskfile.dev/

Awesome Lists containing this project

README

          

Task Runner TUI

# Task Runner TUI (taskg)

_Terminal task explorer with vibes._

> ⚠️ **Not affiliated with the Task project**
>
> This repository is an independent wrapper UI for the Task project (https://taskfile.dev/).
> It is not affiliated with, endorsed by, or maintained by the original Task project maintainers.

Task Runner TUI (taskg) is a minimal **terminal UI** wrapper around the excellent **Task** project: https://taskfile.dev/
It discovers tasks (including those from includes/extends), lets you filter instantly, and then runs the selected task after the UI exits. Zero streaming pane, zero fluff.

Gogh

VibeCodingLogo

**A Vibe Coding Project**

> ⚠️ **Notice**
> This is a **Vibe Coding** side project. Regular issue triage is not guaranteed. **Please open Issues only when accompanied by a Pull Request** (bug fix or improvement). I’m still learning and playing with GO; PR‑first keeps the project moving. All constructive contributions are welcome.

## Quick Features
* Auto Taskfile discovery (walks up directories)
* Tabs: prefix before first `-` → grouped tab; no dash → Main
* Instant incremental search (just type or press `/`)
* Clean two-line header + tab bar + scrollable task list
* Keyboard first; optional mouse
* Dark / light themes (`--theme=dark|light`)

## Requirements
You must have the [Task CLI](https://taskfile.dev/installation/) installed and available on your `PATH` (the binary is usually named `task`).
If `task` is missing, the UI can launch but will not discover tasks.

## Quick Start
Ensure `task` works first:
```bash
task --version
```

```bash
make build # or: go build ./cmd/taskg
./taskg # run inside any repo with a Taskfile
```

Optional:
```bash
./taskg --theme=light
./taskg --no-mouse
./taskg --project ../other/repo
```

Installing via installer script
-------------------------------

An installer script is included to clone, build and install `taskg` to `/usr/local/bin`.

From a system with Git and Go installed you can run:

```bash
# run installer with defaults (uses this repo)
bash install.sh

# or pipe from remote (replace URL with canonical host if published):
curl -sL https://raw.githubusercontent.com/Mgldvd/task-gui/master/install.sh | bash
```

You can also specify a different repo or branch:

```bash
./install.sh https://github.com//.git main
```

After install, run:

```bash
taskg --help
```

## Key Shortcuts
| Key | Action |
|-----|--------|
| ↑ / k | Up |
| ↓ / j | Down |
| PgUp / PgDn | Fast scroll |
| Home / End | Jump list edges |
| ← / → / Tab / Shift+Tab | Switch tabs |
| / | Search mode |
| Esc | Clear / exit search |
| Enter | Run selected task & quit |
| q / Ctrl+C | Quit |

## Task Grouping
`db-migrate` and `db-seed` → tab `db`. `build` (no dash) → `Main` tab.

## Contributing
PR‑first workflow:
1. Fork & branch (e.g. `feat/x`, `fix/y`).
2. Keep patches focused & small.
3. Run basic checks: `task fmt`, `task lint`, `task test` (or equivalents).
4. Open PR with a short rationale.

Good first ideas: additional themes, better status messages, lightweight tests for parsing, optional fuzzy search, CI config.

## Acknowledgements
Built on top of the amazing [Task](https://taskfile.dev/) and the Bubble Tea / Lip Gloss ecosystem.

## License
MIT. Not affiliated with the Task project; this is an independent wrapper UI.