Skip to content

A cinematic Git commit replay tool for the terminal, turning your Git history into a living, animated story.

License

Notifications You must be signed in to change notification settings

Mause/gitlogue

 
 

Repository files navigation

gitlogue

Terminal Trove Tool of The Week

gitlogue demo

A cinematic Git commit replay tool for the terminal, turning your Git history into a living, animated story.

Watch commits unfold with realistic typing animations, syntax highlighting, and file tree transitions, transforming code changes into a visual experience.

Installation

Using Install Script (Recommended)

curl -fsSL https://raw.githubusercontent.com/unhappychoice/gitlogue/main/install.sh | bash

Using Homebrew

brew install unhappychoice/tap/gitlogue

Using Cargo

cargo install gitlogue

On Arch Linux

pacman -S gitlogue

From Source

git clone https://github.com/unhappychoice/gitlogue.git
cd gitlogue
cargo install --path .

See the Installation Guide for more options and troubleshooting.

Features

🎬 Commit Replay as Animation — Realistic typing, cursor movement, deletions, and file operations
🎨 Tree-sitter Syntax Highlighting — 26 languages supported
🌳 Project File Tree — Directory structure with change statistics
🖥️ Screensaver Mode — Endless random commit playback
🎭 Themes — 9 built-in themes + full customization support
Fast & Lightweight — Built with Rust for performance

Usage

Popular Use Cases

🖥️ Screensaver — Ambient coding display for your workspace
🎓 Education — Visualize how code evolved over time
📺 Presentations — Replay real commit histories live
🎬 Content Creation — Record demos with VHS or asciinema
🎨 Desktop Ricing — A living decoration for your terminal
💼 Look Busy Mode — Appear productive during meetings

Warning

Not a True Screensaver — gitlogue does not include traditional screensaver functions like power management or screen blanking. It's purely a visual display tool.

OLED Burn-in Risk — Static elements (like the editor background and border lines) may cause burn-in on OLED displays over extended periods. LCD displays are generally safe from this issue.

Quick Start

# Start the cinematic screensaver
gitlogue

# View a specific commit
gitlogue --commit abc123

# Replay a range of commits
gitlogue --commit HEAD~5..HEAD

# Replay commits in chronological order (oldest first)
gitlogue --order asc

# Loop a specific commit continuously
gitlogue --commit abc123 --loop

# Loop through a commit range
gitlogue --commit HEAD~10..HEAD --loop

# Use a different theme
gitlogue --theme dracula

# Adjust typing speed (ms per character)
gitlogue --speed 20

# List available themes
gitlogue theme list

# Set default theme
gitlogue theme set dracula

# Combine options
gitlogue --commit HEAD~5 --theme nord --speed 15

Configuration

gitlogue can be configured via ~/.config/gitlogue/config.toml.
You can set the default theme, typing speed, and background preferences.

See the Configuration Guide for full options and examples.

Supported Languages

Rust, TypeScript, JavaScript, Python, Go, Ruby, Swift, Kotlin, Java, PHP, C#, C, C++, Haskell, Dart, Scala, Clojure, Zig, Elixir, Erlang, HTML, CSS, JSON, Markdown, YAML, XML

Documentation

Installation Guide
Usage Guide
Configuration Guide
Theme Customization
Contributing Guidelines
Architecture Overview

Related Projects

Git Visualization & Coding

  • GitType - A CLI code-typing game that turns your source code into typing challenges

Terminal Screensavers

  • tarts - Collection of terminal screensavers in Rust (Matrix, Game of Life, Boids, 3D effects, and more)
  • cbonsai - Grow beautiful bonsai trees in your terminal
  • asciiquarium - Enjoy the mysteries of the sea from your terminal
  • cmatrix - The Matrix screensaver effect for your terminal
  • pipes.sh - Animated pipes flowing through your terminal

Contributing

Contributions are welcome.
See the Contributing Guidelines for details.

License

ISC License. See LICENSE for details.

Author

@unhappychoice

About

A cinematic Git commit replay tool for the terminal, turning your Git history into a living, animated story.

Resources

License

Contributing

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Rust 78.8%
  • Tree-sitter Query 9.1%
  • JavaScript 8.3%
  • Shell 3.1%
  • Other 0.7%