Skip to content

Rewrite commit-chronicle as a self-contained Go binary#1

Merged
ashishxcode merged 2 commits into
mainfrom
feat/go-rewrite
May 25, 2026
Merged

Rewrite commit-chronicle as a self-contained Go binary#1
ashishxcode merged 2 commits into
mainfrom
feat/go-rewrite

Conversation

@ashishxcode
Copy link
Copy Markdown
Owner

What

Replaces the zsh report script with a single self-contained Go binary (Bubble Tea TUI). For a date window it gathers everything you did across your repos — git commits, commits on PRs you authored, authored PRs, and reviewed PRs — into one tagged, fuzzy-filterable picker, then exports a worklog (markdown/json).

range → PICK (filter + multi-select + live preview) → EDIT → EXPORT

Highlights

  • Interactive TUI: range menu (incl. a custom date selector), multi-select picker with live git show --stat preview, in-app editor, animated loading spinner.
  • Repo discovery: --repos, --root (auto-discover all repos under a dir), and config files (~/.config/commit-chronicle/{repos,roots}) — unioned + deduped.
  • GitHub PR/review discovery via gh, date-bounded to keep API calls sane (lists PRs cheaply, fetches details per-PR).
  • Flags: --since/--from/--to/--month/--date, --author/--user, --format md|json, --all, --no-edit, --no-pr, --copy, --out.
  • Packages: cmd/commit-chronicle + internal/{model,config,collect,render,tui,app}.
  • Distribution: Makefile (build/install/release), CI + release GitHub Actions workflows, rewritten README, go.mod floor go 1.24.
  • Legacy zsh scripts removed.

Try it

make install
commit-chronicle --since "7 days ago"

Notes

  • Requires git; gh (authenticated) is optional and unlocks PR/review discovery (--no-pr for git-only).
  • gofmt, go vet, and build are clean; flows verified end-to-end (picker, custom range, spinner, export, JSON).

Replace the zsh report script with a single static binary (Bubble Tea TUI).
For a date window it gathers everything you did across your repos — git
commits, commits on PRs you authored, authored PRs, and reviewed PRs — into
one tagged, fuzzy-filterable picker, then exports a worklog (markdown/json).

Highlights:
- Interactive: range menu (incl. custom date selector), multi-select picker
  with live git-show preview, in-app editor, animated loading spinner.
- Repo discovery: --repos, --root (auto-discover under a dir), and config
  files (~/.config/commit-chronicle/{repos,roots}); unioned + deduped.
- GitHub PR/review discovery via gh, date-bounded to keep API calls sane.
- Flags: --since/--from/--to/--month/--date, --author/--user, --format md|json,
  --all, --no-edit, --no-pr, --copy, --out.
- Packages: cmd/commit-chronicle + internal/{model,config,collect,render,tui,app}.
- Build/release via Makefile; CI + release GitHub Actions workflows.
- README rewritten; legacy zsh scripts removed.
@ashishxcode ashishxcode merged commit 6adb3f6 into main May 25, 2026
3 checks passed
@ashishxcode ashishxcode deleted the feat/go-rewrite branch May 25, 2026 09:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant