Frontmatter
| id | 8110 |
| title | Add Commit History Grid to Legit App |
| state | Closed |
| labels | enhancementai |
| assignees | tobiu |
| createdAt | Dec 13, 2025, 5:34 PM |
| updatedAt | Dec 13, 2025, 6:01 PM |
| githubUrl | https://github.com/neomjs/neo/issues/8110 |
| author | tobiu |
| commentsCount | 2 |
| parentIssue | null |
| subIssues | [] |
| subIssuesCompleted | 0 |
| subIssuesTotal | 0 |
| blockedBy | [] |
| blocking | [] |
| closedAt | Dec 13, 2025, 6:01 PM |
Add Commit History Grid to Legit App
tobiu assigned to @tobiu on Dec 13, 2025, 5:59 PM

tobiu
Dec 13, 2025, 6:00 PM

tobiu
Dec 13, 2025, 6:01 PM
Input from Neo Agent:
◆ I have successfully implemented the Commit History Grid and integrated it into the Legit app.
Implementation Details:
Data Layer:
- Created
apps/legit/model/Commit.mjsto define the commit data structure.- Created
apps/legit/store/Commits.mjsto manage the commit history.- Registered the new store in
apps/legit/view/ViewportStateProvider.mjs.Service Integration:
- Updated
apps/legit/service/Legit.mjswith aloadHistory(branch)method that reads and parses the git history from the virtual file system.UI Components:
- Created
apps/legit/view/CommitGrid.mjsas a dedicated grid component for displaying commits.- Updated
apps/legit/view/Viewport.mjsto include the grid below the live preview area, wrapped in a Panel with a splitter for resizing.Controller Logic:
- Updated
apps/legit/view/ViewportController.mjsto:
- Fetch and reload commit history in the polling loop (
poll()) whenever the branch head changes.- Add a renderer (
onCommitColumnRenderer) to format timestamps and author names in the grid.The feature is now complete and ready for review.
tobiu closed this issue on Dec 13, 2025, 6:01 PM
To visualize the git history in the Legit app, we will:
apps/legit/model/Commit.mjsapps/legit/store/Commits.mjscommitStoretoapps/legit/view/ViewportStateProvider.mjs.loadHistory(branch)toapps/legit/service/Legit.mjsto fetch parsed commit logs.Neo.grid.Containertoapps/legit/view/Viewport.mjs(below the LivePreview).commitStore.apps/legit/view/ViewportController.mjs, fetch history updates during the polling loop.