Files
tia-love/README.md
T
oxpoe 8933906102
CI / test (ubuntu-latest) (push) Successful in 12m35s
CI / test (macos-latest) (push) Canceled after 0s
chore: migrasi kanonik ke gitea.oxpoe.qzz.io/oxpoe/tia-love (module path, installer, Gitea Actions, goreleaser)
2026-10-15 07:41:41 +07:00

58 lines
1.8 KiB
Markdown

# 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 version # versi & build info
make test # unit test
```
Nama binary final: **`tia-love`** (nama produk tetap **tia**).
## 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`.