Terminal Trove Tool of The Week
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.
curl -fsSL https://raw.githubusercontent.com/unhappychoice/gitlogue/main/install.sh | bashbrew install gitlogue
cargo install gitlogue
pacman -S gitlogue
# Run directly without installation nix run github:unhappychoice/gitlogue # Or install to your profile nix profile install github:unhappychoice/gitlogue # For flake-based configurations, add to your inputs: # inputs.gitlogue.url = "github:unhappychoice/gitlogue"; # Then use: inputs.gitlogue.packages.${system}.default
git clone https://github.com/unhappychoice/gitlogue.git cd gitlogue cargo install --path .
See the Installation Guide for more options and troubleshooting.
π¬ Commit Replay as Animation β Realistic typing, cursor movement, deletions, and file operations
π¨ Tree-sitter Syntax Highlighting β 29 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
π₯οΈ 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.
# 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 # Filter commits by author or email (case-insensitive partial match) gitlogue --author "john" # Filter commits by date gitlogue --after "2024εΉ΄01ζ01ζ₯" gitlogue --before "1 week ago" gitlogue --after "2024εΉ΄06ζ01ζ₯" --before "2024εΉ΄07ζ01ζ₯" # Use a different theme gitlogue --theme dracula # Adjust typing speed (ms per character) gitlogue --speed 20 # Ignore specific file patterns (e.g., notebooks, lock files) gitlogue --ignore "*.ipynb" --ignore "poetry.lock" # Use an ignore file gitlogue --ignore-file .gitlogue-ignore # List available themes gitlogue theme list # Set default theme gitlogue theme set dracula # Combine options gitlogue --commit HEAD~5 --author "john" --theme nord --speed 15 --ignore "*.ipynb"
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.
Bash, C, C#, C++, Clojure, CSS, Dart, Elixir, Erlang, Go, Haskell, HTML, Java, JavaScript, JSON, Kotlin, Lua, Markdown, PHP, Python, Ruby, Rust, Scala, Svelte, Swift, TypeScript, XML, YAML, Zig
Installation Guide
Usage Guide
Configuration Guide
Theme Customization
Contributing Guidelines
Architecture Overview
- GitType - A CLI code-typing game that turns your source code into typing challenges
- 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
Contributions are welcome.
See the Contributing Guidelines for details.
ISC License. See LICENSE for details.