Copy
+==============================================================================+
| |
| THE BRICK EXTENDS TO GIT |
| |
| Git viewers transform terminal commands into rich visual documents. |
| Each viewer type serves a specific purpose in your Git workflow. |
| |
+==============================================================================+
What Are Git Viewers?
Copy
+==============================================================================+
| FROM TERMINAL TO VISUAL DOCUMENTS |
+==============================================================================+
| |
| TERMINAL VISUAL DOCUMENT |
| +------------------+ +------------------+ |
| | | | | |
| | $ git log | ------> | Commit Graph | |
| | $ git diff | | Side-by-Side | |
| | $ git blame | | Author Colors | |
| | | | | |
| +------------------+ +------------------+ |
| Text output only Rich visualization |
| |
+==============================================================================+
The Viewer Family
Copy
+==============================================================================+
| GIT VIEWER TYPE HIERARCHY |
+==============================================================================+
| |
| GitBaseViewer |
| (shared foundation) |
| | |
| +-------------------+-------------------+ |
| | | | | | |
| v v v v v |
| +------+ +------+ +------+ +------+ +------+ |
| | Diff | |Commit| |Branch| |Blame | | Heat | |
| | | | | | | | | | map | |
| +------+ +------+ +------+ +------+ +------+ |
| | | | | | |
| v v v v v |
| +------+ +------+ +------+ +------+ +------+ |
| |Stash | |Reflog| |Impact| |Remote| |Time- | |
| | | | | | | |Status| | line | |
| +------+ +------+ +------+ +------+ +------+ |
| |
| All viewers share: CodexMono typography, consistent colors, same controls |
| |
+==============================================================================+
- Consistent look and feel across all viewers
- Same keyboard shortcuts work everywhere
- Settings apply to all viewers at once
Viewer Categories
Copy
+==============================================================================+
| VIEWER CATEGORIES |
+==============================================================================+
| |
| CHANGE VIEWERS HISTORY VIEWERS |
| See what changed See when and who |
| +----------------------+ +----------------------+ |
| | | | | |
| | Diff Viewer | | Commit Search | |
| | Line-by-line view | | Find any commit | |
| | | | | |
| | Hunk Viewer | | Author Timeline | |
| | Grouped changes | | Activity over time | |
| | | | | |
| +----------------------+ +----------------------+ |
| |
| STRUCTURE VIEWERS ANALYSIS VIEWERS |
| See how code is organized See patterns and insights |
| +----------------------+ +----------------------+ |
| | | | | |
| | Branch Diagram | | Heatmap | |
| | Visual branch tree | | Hotspots in code | |
| | | | | |
| | Remote Status | | Impact Analysis | |
| | Sync with remote | | Change magnitude | |
| | | | | |
| +----------------------+ +----------------------+ |
| |
| RECOVERY VIEWERS OVERVIEW VIEWERS |
| Recover lost work Big picture view |
| +----------------------+ +----------------------+ |
| | | | | |
| | Stash Viewer | | Dashboard | |
| | Saved changes | | All stats at once | |
| | | | | |
| | Reflog Viewer | | Project Summary | |
| | Every action log | | Health check | |
| | | | | |
| +----------------------+ +----------------------+ |
| |
+==============================================================================+
15 Git Viewers at a Glance
Copy
+==============================================================================+
| ALL GIT VIEWERS |
+==============================================================================+
| |
| VIEWER WHAT IT SHOWS WHEN TO USE |
| --------------- --------------------------- ------------------ |
| |
| Dashboard Overall repository status Start of day |
| Blame Who wrote each line Find author |
| Commit Single commit details Review change |
| Commit Search Find commits by message Looking for code |
| Branch Current branch info Check status |
| Branch Diagram Visual branch tree Merge planning |
| Stash Saved work-in-progress Recover work |
| Author Timeline Activity over time Team review |
| Project Summary Repository health Project review |
| Heatmap Code hotspots Find busy files |
| Hunk Grouped code changes Quick diff review |
| Impact Change magnitude Risk assessment |
| Reflog All Git operations Recover lost |
| Remote Status Sync with server Before push/pull |
| Operation Timeline Git action history Debug workflow |
| |
+==============================================================================+
How Viewers Load
Copy
+==============================================================================+
| VIEWER LOADING FLOW |
+==============================================================================+
| |
| 1. You select a viewer |
| +------------------+ |
| | "Show Blame" | |
| +--------+---------+ |
| | |
| v |
| 2. Only that viewer code loads (lazy loading) |
| +------------------+ |
| | Load on demand | <-- Keeps app fast |
| +--------+---------+ |
| | |
| v |
| 3. Viewer initializes with your settings |
| +------------------+ |
| | Apply font, | |
| | colors, size | |
| +--------+---------+ |
| | |
| v |
| 4. Data fetched from Rust backend |
| +------------------+ |
| | Git operations | <-- Fast native performance |
| +--------+---------+ |
| | |
| v |
| 5. Visual document rendered |
| +------------------+ |
| | Your Git view | |
| +------------------+ |
| |
+==============================================================================+
Shared Settings
Copy
+==============================================================================+
| VIEWER SETTINGS |
+==============================================================================+
| |
| All Git viewers share the same settings: |
| |
| +-------------------+------------------+ |
| | SETTING | PURPOSE | |
| +-------------------+------------------+ |
| | Font Size | Readability | |
| | Font Weight | Bold/Light | |
| | Line Height | Spacing | |
| | Opacity | Contrast | |
| | Font Family | CodexMono | |
| +-------------------+------------------+ |
| |
| Change once, applies everywhere. |
| |
| Font Stack: |
| +--------------------------------------------------+ |
| | CodexMono --> CodexMono EA --> monospace | |
| +--------------------------------------------------+ |
| | Primary East Asian System | |
| | Fallback Fallback | |
| +--------------------------------------------------+ |
| |
+==============================================================================+
Icon System
Copy
+==============================================================================+
| VIEWER ICONS |
+==============================================================================+
| |
| STATUS GIT ACTIONS |
| +----------------+ +----------------+ |
| | * Success | | Y Branch | |
| | ! Warning | | <> Merge | |
| | X Error | | +- Diff | |
| | O Loading | | @ Commit | |
| +----------------+ +----------------+ |
| |
| ATTRIBUTION NAVIGATION |
| +----------------+ +----------------+ |
| | [AI] Bot work | | > Expand | |
| | [H] Human work | | v Collapse | |
| | ~ Activity | | [] Folder | |
| | * New | | - File | |
| +----------------+ +----------------+ |
| |
| Icons powered by Lucide - consistent across all viewers. |
| |
+==============================================================================+
Viewer Communication
Copy
+==============================================================================+
| HOW VIEWERS TALK |
+==============================================================================+
| |
| Viewers communicate through events: |
| |
| Branch Diagram Commit Search |
| +------------------+ +------------------+ |
| | | "branch | | |
| | Select branch | ----selected---> | Filter commits | |
| | | | | |
| +------------------+ +------------------+ |
| |
| Diff Viewer Blame Viewer |
| +------------------+ +------------------+ |
| | | "file | | |
| | Click file | ----selected---> | Show blame | |
| | | | | |
| +------------------+ +------------------+ |
| |
| This enables coordinated views without tight coupling. |
| |
+==============================================================================+
The Extended Brick
Copy
+==============================================================================+
| TERMINAL TO DOCUMENT |
+==============================================================================+
| |
| The "Brick" is our fundamental unit of display: |
| |
| TERMINAL BRICK DOCUMENT BRICK |
| +------------------+ +------------------+ |
| | | | | |
| | Raw PTY output | extends to | Rich Git view | |
| | ANSI codes | -------------> | Syntax colors | |
| | xterm.js buffer | | Interactive UI | |
| | | | | |
| +------------------+ +------------------+ |
| |
| Same rendering pipeline: |
| - CodexMono typography |
| - Consistent cell spacing |
| - Predictable visual alignment |
| |
| Different content types, same visual experience. |
| |
+==============================================================================+
Summary
Copy
+==============================================================================+
| KEY TAKEAWAYS |
+==============================================================================+
| |
| 15 Git Viewers |
| +----------------------------------------------------------------+ |
| | Dashboard | Blame | Commit | Search | Branch | Diagram | Stash | |
| | Timeline | Summary | Heatmap | Hunk | Impact | Reflog | Remote | |
| | Operation Timeline | |
| +----------------------------------------------------------------+ |
| |
| Shared Foundation |
| +----------------------------------------------------------------+ |
| | All viewers inherit from GitBaseViewer | |
| | Same settings, same typography, same icons | |
| | Lazy loading for performance | |
| +----------------------------------------------------------------+ |
| |
| The Brick Paradigm |
| +----------------------------------------------------------------+ |
| | Terminal and document viewers share visual foundation | |
| | CodexMono ensures consistent character alignment | |
| | Predictable experience across all viewer types | |
| +----------------------------------------------------------------+ |
| |
+==============================================================================+