[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-5782":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":16,"stars7d":17,"stars30d":18,"stars90d":16,"forks30d":16,"starsTrendScore":16,"compositeScore":19,"rankGlobal":10,"rankLanguage":10,"license":20,"archived":21,"fork":21,"defaultBranch":22,"hasWiki":23,"hasPages":21,"topics":24,"createdAt":10,"pushedAt":10,"updatedAt":45,"readmeContent":46,"aiSummary":47,"trendingCount":16,"starSnapshotCount":16,"syncStatus":48,"lastSyncTime":49,"discoverSource":50},5782,"gitlogue","unhappychoice\u002Fgitlogue","unhappychoice","A cinematic Git commit replay tool for the terminal, turning your Git history into a living, animated story.","",null,"Rust",4785,105,7,10,0,11,63,69.88,"ISC License",false,"main",true,[25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44],"cli","cli-tool","code-animation","commit-history","developer-tools","git","git-history","git-visualization","productivity","ratatui","rust","screensaver","syntax-highlighting","terminal","terminal-app","terminal-based","terminal-screensaver","tree-sitter","tui","visualization","2026-06-12 04:00:27","\u003Cp align=\"center\">\n  \u003Cimg src=\"docs\u002Fassets\u002Fdemo.gif\" alt=\"gitlogue\" width=\"820\">\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  \u003Ca href=\"https:\u002F\u002Fcrates.io\u002Fcrates\u002Fgitlogue\">\u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fcrates\u002Fv\u002Fgitlogue.svg?style=flat-square&color=E06B4B\" alt=\"crates.io\">\u003C\u002Fa>\n  \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Funhappychoice\u002Fgitlogue\u002Freleases\">\u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fv\u002Frelease\u002Funhappychoice\u002Fgitlogue?style=flat-square&color=E0C14B&label=release\" alt=\"release\">\u003C\u002Fa>\n  \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Funhappychoice\u002Fgitlogue\u002Factions\u002Fworkflows\u002Fci.yml\">\u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Factions\u002Fworkflow\u002Fstatus\u002Funhappychoice\u002Fgitlogue\u002Fci.yml?branch=main&style=flat-square&label=CI\" alt=\"CI\">\u003C\u002Fa>\n  \u003Ca href=\"https:\u002F\u002Fcodecov.io\u002Fgh\u002Funhappychoice\u002Fgitlogue\">\u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fcodecov\u002Fc\u002Fgithub\u002Funhappychoice\u002Fgitlogue?style=flat-square\" alt=\"codecov\">\u003C\u002Fa>\n  \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Funhappychoice\u002Fgitlogue\u002Fblob\u002Fmain\u002FLICENSE\">\u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fcrates\u002Fl\u002Fgitlogue.svg?style=flat-square\" alt=\"license\">\u003C\u002Fa>\n  \u003Ca href=\"https:\u002F\u002Fterminaltrove.com\u002Fgitlogue\u002F\">\u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FTerminal_Trove-Tool_of_The_Week-2ea043?style=flat-square\" alt=\"Terminal Trove Tool of The Week\">\u003C\u002Fa>\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  \u003Cstrong>A cinematic Git commit replay tool for the terminal.\u003C\u002Fstrong>\u003Cbr>\n  \u003Csub>Turn your Git history into a living, animated story — typing, syntax highlighting, file tree transitions.\u003C\u002Fsub>\n\u003C\u002Fp>\n\nWatch commits unfold with realistic typing animations, syntax highlighting, and file tree transitions, transforming code changes into a visual experience.\n\n## Installation\n\n### Using Install Script (Recommended)\n\n```bash\ncurl -fsSL https:\u002F\u002Fraw.githubusercontent.com\u002Funhappychoice\u002Fgitlogue\u002Fmain\u002Finstall.sh | bash\n```\n\n### Using Homebrew\n\n```bash\nbrew install gitlogue\n```\n\n### Using Cargo\n\n```bash\ncargo install gitlogue\n```\n\n### On Arch Linux\n\n```bash\npacman -S gitlogue\n```\n\n### Using Nix\n\n```bash\n# Run directly without installation\nnix run github:unhappychoice\u002Fgitlogue\n\n# Or install to your profile\nnix profile install github:unhappychoice\u002Fgitlogue\n\n# For flake-based configurations, add to your inputs:\n# inputs.gitlogue.url = \"github:unhappychoice\u002Fgitlogue\";\n# Then use: inputs.gitlogue.packages.${system}.default\n```\n\n### From Source\n\n```bash\ngit clone https:\u002F\u002Fgithub.com\u002Funhappychoice\u002Fgitlogue.git\ncd gitlogue\ncargo install --path .\n```\n\nSee the [Installation Guide](docs\u002Finstallation.md) for more options and troubleshooting.\n\n## Features\n\n🎬 **Commit Replay as Animation** — Realistic typing, cursor movement, deletions, and file operations\n🔍 **Working Tree Diff View** — Visualize staged\u002Funstaged changes before committing\n🎨 **Tree-sitter Syntax Highlighting** — 29 languages supported\n🌳 **Project File Tree** — Directory structure with change statistics\n🖥️ **Screensaver Mode** — Endless random commit playback\n🎭 **Themes** — 9 built-in themes + full customization support\n⚡ **Fast & Lightweight** — Built with Rust for performance\n\n## Usage\n\n### Popular Use Cases\n\n🖥️  **Screensaver** — Ambient coding display for your workspace  \n🎓 **Education** — Visualize how code evolved over time  \n📺 **Presentations** — Replay real commit histories live  \n🎬 **Content Creation** — Record demos with VHS or asciinema  \n🎨 **Desktop Ricing** — A living decoration for your terminal  \n💼 **Look Busy Mode** — Appear productive during meetings\n\n> [!WARNING]\n> **Not a True Screensaver** — gitlogue does not include traditional screensaver functions like power management or screen blanking. It's purely a visual display tool.\n>\n> **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.\n\n### Quick Start\n\n```bash\n# Start the cinematic screensaver\ngitlogue\n\n# View a specific commit\ngitlogue --commit abc123\n\n# Replay a range of commits\ngitlogue --commit HEAD~5..HEAD\n\n# Replay commits in chronological order (oldest first)\ngitlogue --order asc\n\n# Loop a specific commit continuously\ngitlogue --commit abc123 --loop\n\n# Loop through a commit range\ngitlogue --commit HEAD~10..HEAD --loop\n\n# View staged changes (default)\ngitlogue diff\n\n# View unstaged changes instead\ngitlogue diff --unstaged\n\n# Filter commits by author or email (case-insensitive partial match)\ngitlogue --author \"john\"\n\n# Filter commits by date\ngitlogue --after \"2024-01-01\"\ngitlogue --before \"1 week ago\"\ngitlogue --after \"2024-06-01\" --before \"2024-07-01\"\n\n# Use a different theme\ngitlogue --theme dracula\n\n# Adjust typing speed (ms per character)\ngitlogue --speed 20\n\n# Set different speeds for different file types\ngitlogue --speed-rule \"*.java:50\" --speed-rule \"*.xml:5\"\n\n# Ignore specific file patterns (e.g., notebooks, lock files)\ngitlogue --ignore \"*.ipynb\" --ignore \"poetry.lock\"\n\n# Use an ignore file\ngitlogue --ignore-file .gitlogue-ignore\n\n# List available themes\ngitlogue theme list\n\n# Set default theme\ngitlogue theme set dracula\n\n# Combine options\ngitlogue --commit HEAD~5 --author \"john\" --theme nord --speed 15 --ignore \"*.ipynb\"\n```\n\n## Key Bindings\n\n### Playback\n\n| Key | Action |\n|-----|--------|\n| `Space` | Toggle play \u002F pause |\n| `h` | Step one line backward |\n| `l` | Step one line forward |\n| `H` (Shift+h) | Step one change backward |\n| `L` (Shift+l) | Step one change forward |\n| `p` | Previous commit |\n| `n` | Next commit |\n| `Esc` | Open menu |\n| `q` \u002F `Ctrl+c` | Quit |\n\n### Menu\n\n| Key | Action |\n|-----|--------|\n| `j` \u002F `↓` | Move selection down |\n| `k` \u002F `↑` | Move selection up |\n| `Enter` | Select item |\n| `Esc` | Close menu |\n\n## Configuration\n\ngitlogue can be configured via `~\u002F.config\u002Fgitlogue\u002Fconfig.toml`.  \nYou can set the default theme, typing speed, and background preferences.\n\nSee the [Configuration Guide](docs\u002Fconfiguration.md) for full options and examples.\n\n## Supported Languages\n\nAstro, Bash, C, C#, C++, Clojure, CSS, Dart, Elixir, Erlang, Go, Haskell, HTML, Java, JavaScript, JSON, Kotlin, Lua, Markdown, Nix, PHP, Python, Ruby, Rust, Scala, Svelte, Swift, TypeScript, XML, YAML, Zig\n\n## Documentation\n\n[Installation Guide](docs\u002Finstallation.md)  \n[Usage Guide](docs\u002Fusage.md)  \n[Configuration Guide](docs\u002Fconfiguration.md)  \n[Theme Customization](docs\u002Fthemes.md)  \n[Contributing Guidelines](docs\u002FCONTRIBUTING.md)  \n[Architecture Overview](docs\u002FARCHITECTURE.md)\n\n## Related Projects\n\n### Git Visualization & Coding\n\n- [**GitType**](https:\u002F\u002Fgithub.com\u002Funhappychoice\u002Fgittype) - A CLI code-typing game that turns your source code into typing challenges\n\n### Terminal Screensavers\n\n- [**tarts**](https:\u002F\u002Fgithub.com\u002Foiwn\u002Ftarts) - Collection of terminal screensavers in Rust (Matrix, Game of Life, Boids, 3D effects, and more)\n- [**cbonsai**](https:\u002F\u002Fgitlab.com\u002Fjallbrit\u002Fcbonsai) - Grow beautiful bonsai trees in your terminal\n- [**asciiquarium**](https:\u002F\u002Fgithub.com\u002Fcmatsuoka\u002Fasciiquarium) - Enjoy the mysteries of the sea from your terminal\n- [**cmatrix**](https:\u002F\u002Fgithub.com\u002Fabishekvashok\u002Fcmatrix) - The Matrix screensaver effect for your terminal\n- [**pipes.sh**](https:\u002F\u002Fgithub.com\u002Fpipeseroni\u002Fpipes.sh) - Animated pipes flowing through your terminal\n\n## Contributing\n\nContributions are welcome.  \nSee the [Contributing Guidelines](docs\u002FCONTRIBUTING.md) for details.\n\n## License\n\nISC License. See [LICENSE](LICENSE) for details.\n\n## Author\n\n[@unhappychoice](https:\u002F\u002Funhappychoice.com)\n","gitlogue 是一个用于终端的电影级 Git 提交回放工具，能够将你的 Git 历史记录转化为生动的动画故事。它利用 Rust 语言开发，具备实时打字效果、语法高亮显示以及文件树过渡等核心功能，支持29种编程语言的语法高亮，并提供多种主题供用户选择。此外，该工具还拥有工作树差异视图和项目文件树展示能力，便于开发者在提交代码前可视化查看已暂存或未暂存的变化。其轻量快速的特点使其非常适合于需要回顾项目演变过程、教学演示或者作为终端屏保使用的场景中。",2,"2026-06-11 03:05:03","top_language"]