Files
tia-love/README.md
T

2.4 KiB
Raw Blame History

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

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

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:

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.