explaingit

unhappychoice/gitlogue

4,729RustAudience · developerComplexity · 1/5Setup · easy

TLDR

A terminal tool that replays your Git commit history as a live animated display, showing code appear character by character with syntax highlighting and a file tree, like a visual time machine for your repo.

Mindmap

mindmap
  root((gitlogue))
    What it does
      Replay commit history
      Animated typing effect
      Syntax highlighting
    Features
      Filter by author date
      Loop screensaver mode
      Diff view
      Custom color themes
    Install Options
      Homebrew
      Cargo
      Shell script
    Tech Stack
      Rust
    Languages Supported
      31 including Python JS Go
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Review how a project evolved over time by watching commits replay in sequence as an animated terminal display.

USE CASE 2

Run gitlogue in screensaver mode to show a live code animation on a secondary monitor as ambient background.

USE CASE 3

Inspect staged or unstaged changes in a visually distinct diff view before committing.

USE CASE 4

Filter and replay commits by a specific author or date range to understand their contribution history.

Tech stack

Rust

Getting it running

Difficulty · easy Time to first run · 5min

Avoid leaving the display running indefinitely on OLED screens, static UI elements can cause burn-in.

In plain English

Gitlogue is a terminal tool that replays your Git commit history as an animated visual experience. Instead of reading a static list of changes, you watch code appear character by character on screen, with syntax highlighting and file tree transitions, as if someone is typing each commit in real time. It is built with Rust for speed and runs entirely in the terminal. The tool supports several practical uses beyond aesthetics. You can replay a specific commit or a range of commits, filter history by author or date, loop a commit continuously, and adjust the typing speed per file type. There is a screensaver mode that cycles through commits indefinitely, which some people use as an ambient display or background decoration. A diff view lets you inspect staged or unstaged changes before committing. Nine built-in color themes are included, with support for custom themes via a configuration file. Syntax highlighting covers 31 languages including Python, JavaScript, Rust, Go, TypeScript, and others. Keyboard shortcuts let you pause, step forward or backward line by line or change by change, and jump between commits. Installation options include a shell script, Homebrew, the Rust package manager Cargo, the Arch Linux package manager, and Nix. Building from source is also documented. The README notes that gitlogue is a visual display tool only and does not function as a traditional screensaver. It also warns that static elements in the display may cause burn-in on OLED screens if left running for extended periods.

Copy-paste prompts

Prompt 1
Using gitlogue, how do I replay only the commits from a specific author in my Git repo as a terminal animation?
Prompt 2
I want to run gitlogue as an ambient display that loops through my entire commit history. Which command and flags do I use?
Prompt 3
How do I adjust the typing animation speed in gitlogue for different file types so Python files animate slower than JSON files?
Prompt 4
Show me how to install gitlogue via Homebrew and replay the last 20 commits of my repo with syntax highlighting.
Open on GitHub → Explain another repo

← unhappychoice on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.