A fast, native-feeling, open source Git client for macOS, Windows, and Linux.
Also available: Windows ARM64 · Linux .deb, .rpm · Linux ARM64 AppImage, .deb, .rpm
Shipyard is an open source Git client built with Tauri, Vue, and Rust. It talks directly to the git binary already on your machine, so it uses your existing SSH agent, credential helper, and user identity—no separate login required.
Shipyard is designed for developers who manage multiple repositories and want a native desktop experience on macOS, Windows, or Linux with powerful Git features without sacrificing speed or control.
- Repository Groups: Organize multiple repositories into named groups with bulk operations (pull all, checkout all to a branch)
- Working Tree Management: Stage, unstage, commit, amend, and discard changes with a clear file tree view
- Branch Operations: Create, checkout, delete, merge, rename, and track branches with visual indicators for merged/unmerged status
- Remote Management: Add, edit, and remove remotes; fetch, pull, and push with conflict detection
- Commit History: Visual commit graph with searchable history, file changes, and diffs
- Stash Support: Save, apply, pop, and drop stashes with individual stash inspection
- Tag Management: Create, delete, and view both lightweight and annotated tags
- File History & Blame: Track changes to individual files over time with line-by-line authorship
- Diff Viewer: Inline or split diff views with customizable fonts
- Cherry-pick & Revert: Apply or undo commits across branches
- Integrated Terminal: Open terminals in repository directories without leaving the app
- Smart Refresh: Configurable auto-refresh with active hours to avoid unnecessary Git operations
- Editor Integration: Open files directly in Cursor, VS Code, Zed, Sublime Text, PhpStorm, or your system default
- Notifications: Background change notifications when repositories update
- Command History: Inspect every Git command Shipyard runs under the hood
- Pull Request Helpers: Generate GitHub/GitLab pull request URLs for branches
- macOS: Apple Silicon (ARM64) required. Intel Macs are not currently supported.
- Windows: Windows 10 or 11, x64 or ARM64
- Linux: x64 or ARM64 with WebKitGTK 4.1 (Ubuntu 22.04, Debian 12, Fedora 36, or newer)
- Git: Must be installed and available in your PATH. On Windows, install Git for Windows.
- Download the latest release: Shipyard-macos-arm64.dmg
- Open the DMG and drag Shipyard to your Applications folder
- Launch Shipyard from Applications
- Download the latest installer: Shipyard-windows-x64.exe, or Shipyard-windows-arm64.exe on ARM PCs like Snapdragon laptops
- Run it. It installs Shipyard for your user account without asking for administrator rights
- Launch Shipyard from the Start menu
The installer isn't code-signed yet, so Windows SmartScreen may say Windows protected your PC. Click More info, then Run anyway. Help → Check for Updates… keeps Shipyard current.
Shipyard finds Git on your PATH or in Git for Windows' install folder. Conflicted files open with the editor's command on your PATH, or from its usual install folder for Cursor, VS Code, Zed, and Sublime Text. The terminal panel starts PowerShell.
Pick one package. Each one updates itself from Help → Check for Updates…; the .deb and .rpm ask for your password to install the update.
| Package | Install |
|---|---|
| AppImage (any distro) | chmod +x Shipyard-linux-x64.AppImage, then run it |
| .deb (Debian, Ubuntu, Mint) | sudo apt install ./Shipyard-linux-x64.deb |
| .rpm (Fedora, RHEL, openSUSE) | sudo dnf install ./Shipyard-linux-x64.rpm |
Use the arm64 files on ARM machines. The .deb and .rpm install WebKitGTK for you.
To open conflicted files in an editor, its command has to be on your PATH: cursor, code, phpstorm, subl, or zed. System default uses your desktop's default app for the file type.
Want to build Shipyard from source or contribute? You'll need Bun, Rust, Git, and a C toolchain: Xcode Command Line Tools on macOS, the Visual Studio Build Tools on Windows, or the WebKitGTK development packages on Linux.
macOS: Xcode Command Line Tools provide the C/C++ compiler Rust uses.
xcode-select --installIf already installed, confirm with:
xcode-select -pYou should see /Library/Developer/CommandLineTools or an Xcode path.
Linux: install a compiler and WebKitGTK. On Debian or Ubuntu:
sudo apt install build-essential curl libwebkit2gtk-4.1-dev libxdo-dev libssl-dev librsvg2-dev libayatana-appindicator3-devFor Fedora, Arch, and other distros, see Tauri's Linux prerequisites.
Windows: install the Build Tools for Visual Studio with the Desktop development with C++ workload. See Tauri's Windows prerequisites for details. WebView2 already comes with Windows 10 and 11.
Install with the official script from bun.sh:
curl -fsSL https://bun.sh/install | bash
bun --versionOn Windows, run powershell -c "irm bun.sh/install.ps1 | iex" instead.
Tauri compiles the native app with cargo. Install the official toolchain with rustup:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | shOn Windows, download and run rustup-init.exe from the same page and keep the default MSVC toolchain.
Accept the defaults, then open a new terminal. Confirm:
cargo --version
rustc --versionYou do not need to source anything for bun run tauri dev. That script already prepends $HOME/.cargo/bin to PATH.
git --versionHomebrew Git, your distro's git package, /usr/bin/git, and Git for Windows all work. Shipyard shells out to whatever git is on your PATH.
git clone https://github.com/fylzero/shipyard.git
cd shipyardbun install
bun run tauri devThis command:
- Starts Vite on
http://localhost:1430for the Vue UI - Compiles the Rust/Tauri shell
- Opens the native Shipyard window
On Windows, run bunx tauri dev instead. The tauri script sets PATH the Unix way, which doesn't work there.
The first tauri dev (or tauri build) downloads crates and compiles from scratch, which often takes several minutes. Later runs are much faster.
bun run tauri buildOn macOS, the build produces:
| Artifact | Path |
|---|---|
| App bundle | src-tauri/target/release/bundle/macos/Shipyard.app |
| Disk image | src-tauri/target/release/bundle/dmg/Shipyard_<version>_aarch64.dmg |
To run it locally, open the .app (or drag it to /Applications). macOS Gatekeeper may warn that an unsigned local build is unidentified: right-click the app, choose Open, then confirm.
On Linux, the build produces:
| Artifact | Path |
|---|---|
| AppImage | src-tauri/target/release/bundle/appimage/Shipyard_<version>_amd64.AppImage |
| Debian package | src-tauri/target/release/bundle/deb/Shipyard_<version>_amd64.deb |
| RPM package | src-tauri/target/release/bundle/rpm/Shipyard-<version>-1.x86_64.rpm |
On Windows, bunx tauri build produces:
| Artifact | Path |
|---|---|
| Installer | src-tauri/target/release/bundle/nsis/Shipyard_<version>_x64-setup.exe |
| MSI package | src-tauri/target/release/bundle/msi/Shipyard_<version>_x64_en-US.msi |
Pushing a v* tag runs the Release workflow. It builds and notarizes the macOS app first, then builds the Linux x64 and ARM64 packages, then the Windows x64 and ARM64 installers, and adds them all to the same GitHub release.
See macOS release setup for Apple enrollment, repository secrets, and the signing and notarization checks, Linux releases for the Linux packages and how they update, and Windows releases for the Windows installers and code signing.
failed to run 'cargo metadata' ... No such file or directory (os error 2)
Rust is not installed. Run step 3 above, open a new terminal, and confirm command -v cargo prints /Users/<you>/.cargo/bin/cargo. If rustup did not update ~/.zshrc, add . "$HOME/.cargo/env" there once.
xcrun: error: invalid active developer path
Xcode Command Line Tools are missing or stale. Run xcode-select --install (or sudo xcode-select --reset after installing Xcode).
The system library 'webkit2gtk-4.1' required by crate 'webkit2gtk-sys' was not found (Linux)
The WebKitGTK development package is missing. Install the Linux packages from step 1.
Could not open the file in Visual Studio Code (Linux or Windows)
The editor's command (code for VS Code) is not on the PATH Shipyard was launched with. Install the editor's shell command, or pick System default in General settings.
Git was not found (Windows)
Install Git for Windows, then restart Shipyard so it picks up the new PATH.
Vite starts but no native window
Leave the first Rust compile running. If it fails, the error is in the same terminal as bun run tauri dev.
Frontend only (browser, no native APIs)
bun run dev serves the Vue app at http://localhost:1430. Git, dialogs, and other Tauri APIs need bun run tauri dev.
Contributions are welcome! Please see CONTRIBUTING.md for development setup, code style guidelines, and how to submit pull requests.
MIT





