https://github.com/ivorforce/git-diff-stepper
A small app that lets you step through a file's git log with animations.
https://github.com/ivorforce/git-diff-stepper
Last synced: 10 months ago
JSON representation
A small app that lets you step through a file's git log with animations.
- Host: GitHub
- URL: https://github.com/ivorforce/git-diff-stepper
- Owner: Ivorforce
- License: mit
- Created: 2023-05-16T19:51:02.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2023-05-24T01:45:55.000Z (over 2 years ago)
- Last Synced: 2025-03-21T15:00:52.587Z (10 months ago)
- Language: TypeScript
- Size: 4.12 MB
- Stars: 16
- Watchers: 2
- Forks: 1
- Open Issues: 15
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Git Diff Stepper
An app that allows you to animate through the `git log` iterations of a file.

It is technically a continuation of [VSCode Git Diff Stepper](https://github.com/Ivorforce/VSCode-Git-Diff-Stepper): VSCode doesn't expose a way to create editors in insets, and that [won't change in the near future](https://github.com/microsoft/vscode/issues/153198). Other projects embed instances of Monaco and try to fit the style; at this point I decided I might as well create a standalone app which may make animations easier too.
## Controls
- Select a file using File -> Open. The file must be tracked by git, and should have multiple commits.
- `cmd / ctrl` + `alt / option` + `left` or `right` arrow keys move through iterations.
- `f1` to launch the command palette.
## Custom Language Support
We have support for textmate `.tmLanguage` files!
- Drop a `.tmLanguage` file into `$AppData/de.ivorius.gitdiffstepper/tmlanguages`.
- The file name should be equivalent to the file ending (e.g. `css.tmLanguage` for `.css` files).
- Relaunch the App.
To switch the language manually, use the command palette.
## Custom Theme Support
We have support for vscode themes!
- In VSCode, run the command "Developer: Generate Color Theme From Current Settings".
- Convert the resulting `.jsonc` file to regular `.json` (removing comments and trailing commas).
- Drop the file into `$AppData/de.ivorius.gitdiffstepper/themes`.
- Relaunch the App.
To switch the theme, use the command palette.
## Dev Setup
- Install Rust, pnpm
- `pnpm install`
- `pnpm tauri dev`
### Tech Stack
- [Tauri](https://tauri.app) as a web app host.
- [React](https://react.dev) as a frontend library.
- [Monaco](https://microsoft.github.io/monaco-editor/) as a code editor.