https://github.com/flamacore/unigit
A Git client tailored for Unity projects along with easier UX
https://github.com/flamacore/unigit
destructive git lightweight preview rust tauri unity ux
Last synced: 2 months ago
JSON representation
A Git client tailored for Unity projects along with easier UX
- Host: GitHub
- URL: https://github.com/flamacore/unigit
- Owner: flamacore
- Created: 2026-03-11T15:29:31.000Z (4 months ago)
- Default Branch: main
- Last Pushed: 2026-04-13T13:14:47.000Z (2 months ago)
- Last Synced: 2026-04-13T15:15:51.704Z (2 months ago)
- Topics: destructive, git, lightweight, preview, rust, tauri, unity, ux
- Language: TypeScript
- Homepage:
- Size: 1.59 MB
- Stars: 5
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Funding: .github/FUNDING.yml
Awesome Lists containing this project
README
# UniGit
[Buy Me a Coffee](https://buymeacoffee.com/chao.k)
https://github.com/user-attachments/assets/553609a4-e378-4b31-9233-25925b58e284
UniGit is a Windows-first desktop Git client built for fast day-to-day work, with a strong focus on game development and Unity-heavy repositories.
It is designed around a dense single-window workflow: inspect changes, manage branches, review history, generate commit messages, preview assets, and push or pull without bouncing through a pile of dialogs.
## Why It Stands Out
- ### Preview images, Unity materials, and 3D assets inline inside the Git workflow rather than switching out to separate tools
- ### Compare working tree, staged, and `HEAD` asset states for supported preview types
- ### META file pairing specifically for Unity projects where your meta files always get the same action so you won't ever say "sorry forgot to push the meta change"
- ### Local, app-level local ignore that will keep changes you want to ignore but don't want to change the actual .gitignore
- ### Work comfortably with Unity-heavy repos, including Unity meta pairing and material-focused inspection flows
- ### Deliberate destructive actions allowing you to discard local conflicted files while switching/pulling/checking out or other operations
- ### AI generated commit message support via OpenAI, Claude or Ollama API

## What It Does
- Stage and unstage files with drag-and-drop and bulk actions
- Review exact staged and unstaged diffs in the inspector, including expanded diff viewing for selected files
- Browse a canvas-backed commit graph with branch and commit inspection
- Manage local and remote branches, including switch, force switch, merge, rename, and delete flows
- Create AI-assisted commit messages from staged changes and local unpushed commit context
- Preview text, images, PSD files, Unity `.mat` materials, and 3D assets such as FBX, OBJ, GLTF, and GLB
- Inspect Unity materials on sphere, box, or cylinder meshes, with preview/text switching and diff-aware workflows
- Orbit and compare supported 3D model previews with auto-centered preview pivots for awkward source assets
- Clone repositories, manage remotes, and work from a compact tab-based multi-repo layout
## Current Status
UniGit is already usable for real repository work and is actively being developed.
Today the app includes:
- Tauri 2 desktop shell with React, TypeScript, and Rust
- Git CLI orchestration from the Rust backend
- Working tree lanes for staged and unstaged changes
- Commit graph, commit inspector, exact file diff inspection, and file history actions
- Branch management workflows and inline remote-operation feedback
- AI-powered commit message generation through Ollama, OpenAI, or Claude
- Asset preview workflows for images, PSD, Unity materials, and common 3D formats
- Fullscreen inspector tools for deeper file review without leaving the main client
Still in progress:
- Richer merge conflict handling
- Handling for popular OAuth logins like GitHub & GitLab
- Worktree implementation
- Asset from remote previews
- Drag & drop systems
- Broader asset-format coverage and deeper format-specific rendering
- More advanced history queries and navigation tools
## Getting Started
```powershell
npm install
npm run tauri dev
```
You will also need:
- Git available on your system `PATH`
- A Windows environment for the current primary development target
## Theming
Theme customization notes and a reference preset CSS file are available in [docs/theme-customization.md](docs/theme-customization.md).
## Tech Stack
- Tauri 2
- React
- TypeScript
- Rust
- Vite
### Disclaimer
About 80% vibe-coded with human oversight & some hand-written core logic on a multiple agentic orchestration workflow. Models utilized: Claude Opus 4.6, GPT 5.4 Codex, Gemini 3 Flash and Claude Sonnet 4.5. Use at your own discretion.