Skip to content

Add commit-level actions, graph filtering, demo mode, and headless screenshot capture#11

Closed
hoangsvit wants to merge 8 commits into
mainfrom
codex/them-tinh-nang-nhu-gitraken
Closed

Add commit-level actions, graph filtering, demo mode, and headless screenshot capture#11
hoangsvit wants to merge 8 commits into
mainfrom
codex/them-tinh-nang-nhu-gitraken

Conversation

@hoangsvit

Copy link
Copy Markdown
Member

Motivation

  • Expose common commit-level Git actions (checkout, branch from commit, tag, cherry-pick, revert, reset) to the UI so users can operate on commits directly.
  • Improve commit graph UX by adding search/author/ref filters and visual tweaks for clarity.
  • Provide a browser-friendly demo mode and CI-friendly headless screenshot capture to enable previewing the app without a Tauri desktop runtime.

Description

  • Added new Tauri commands in src-tauri/src/commands/history.rs (checkout_commit, create_branch_from_commit, create_tag_from_commit, cherry_pick_commit, revert_commit, reset_to_commit) and registered them in src-tauri/src/lib.rs.
  • Updated frontend services in src/services/gitService.ts to expose the new commands and implemented a demo-mode fallback so the app can run in a browser without Tauri by returning sample data; detection is via __TAURI_INTERNALS__.
  • Enhanced the commit UI in src/components/history/CommitDetails.tsx to add buttons for Branch/Tag/Cherry-pick/Revert/Checkout and Reset actions that invoke the new service methods, with simple prompts/confirmation flows.
  • Reworked the commit graph in src/components/graph/GitGraph.tsx to rebuild row logic, add search/author/ref filters, adjust spacing/colors, and improve row rendering and selection/dim behavior.
  • Auto-open the most recent repository in src/App.tsx when not running under Tauri to make browser demo mode more convenient.
  • Added demo fixtures in src/demo/currentRepoDemo.ts for demo-mode history/status/repo data.
  • Replaced the previous virtual-display screenshot approach with a Chrome DevTools-based capture: added scripts/capture-screenshot.mjs and updated .github/workflows/ci.yml to run the Vite preview and capture a screenshot via headless Chrome, including timeouts and artifact upload, and updated the workflow summary text.

Testing

  • Ran the repository CI workflow (.github/workflows/ci.yml) which performs the frontend build, starts a preview, and runs the headless Chrome screenshot capture; those steps completed in the pipeline run.
  • Built the frontend (npm run build) and compiled Rust/Tauri bindings (cargo build) during CI and local verification to ensure new Tauri commands and TypeScript bindings compile.
  • Exercised demo-mode in the browser (preview) to verify commit graph filtering, commit details actions UI, and screenshot capture using the new scripts/capture-screenshot.mjs script.

Codex Task

@qodo-code-review

Copy link
Copy Markdown

Qodo reviews are paused for this user.

Troubleshooting steps vary by plan Learn more →

On a Teams plan?
Reviews resume once this user has a paid seat and their Git account is linked in Qodo.
Link Git account →

Using GitHub Enterprise Server, GitLab Self-Managed, or Bitbucket Data Center?
These require an Enterprise plan - Contact us
Contact us →

@hoangsvit hoangsvit self-assigned this Jun 27, 2026
@hoangsvit hoangsvit closed this Jun 27, 2026
@hoangsvit hoangsvit deleted the codex/them-tinh-nang-nhu-gitraken branch June 27, 2026 05:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant