Files
tia-love/README.md
T

72 lines
2.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# tia — Terminal Is A My Way
> "Satu binary untuk semua kebutuhan Docker kamu." · Tagline: **Just Work**
TUI modern (Go + Charm v2) + CLI pendamping untuk manajemen Docker:
stack & container, konverter `docker run` → compose, multi-host, mouse-first,
audio feedback, animasi ASCII.
Status: **Phase 0 — fondasi** (lihat roadmap di `docs/PRD.md` §8).
## Build & jalankan
```bash
make build # menghasilkan ./tia-love
./tia-love # buka TUI
./tia-love doctor # periksa kesehatan sistem (docker/audio/stack)
./tia-love version # versi & build info
make test # unit test + e2e
```
Nama binary final: **`tia-love`** (nama produk tetap **tia**).
## Test
```bash
go test ./... # unit test + e2e
go test ./e2e/ -v # E2E saja (verbose)
```
E2E (`e2e/`) membangun binary asli, menjalankannya di dalam pty 120×40, dan
memverifikasi **isi layar** lewat emulator terminal mini (`e2e/screen_test.go`):
boot TUI → keluar bersih (exit 0), toast (`t`), reduced-motion (`a`),
klik mouse + navigasi (`j`/`k`), dan exit code error (2) untuk perintah asing.
Asersi berbasis layar (bukan byte mentah) agar tahan terhadap diff-renderer.
## Instalasi
Setelah rilis pertama tersedia:
```bash
curl -fsSL https://gitea.oxpoe.qzz.io/oxpoe/tia-love/raw/branch/main/install.sh | sh
```
Skrip mendeteksi OS/arch (Linux/macOS · amd64/arm64), memverifikasi SHA256, dan memasang
ke `~/.local/bin/tia-love` tanpa sudo. Alternatif: unduh manual dari halaman Releases di
Gitea (https://gitea.oxpoe.qzz.io/oxpoe/tia-love).
Rilis dibangun oleh GoReleaser — dry run lokal: `goreleaser release --snapshot --clean`.
## Struktur repo
```
cmd/tia-love/ entry point — router TUI default vs CLI companion
internal/app/ root Bubble Tea model
internal/ (menyusul) docker, stack, config, ui, i18n, host, cli, audio
docs/PRD.md product requirements
docs/rea/ laporan analisis proyek referensi (playbook + modul)
reference/ repo referensi untuk REA — git-ignored, jangan di-commit
```
## Prinsip
- **Satu binary** (`CGO_ENABLED=0`), tanpa dependency runtime selain Docker.
- **Core tanpa UI**: logika dibagi TUI & CLI → hasil identik (F-028).
- **Mouse & keyboard setara** sejak hari pertama (F-022).
- **i18n dari awal** — Indonesia default, English fallback (F-023).
## Lisensi
MIT — lihat `LICENSE`. Atribusi pihak ketiga: `THIRD_PARTY_NOTICES.md`,
register aset: `docs/ASSETS.md`.