CLI tool
gitify-app/gitify avatar
gitify-app/gitify

Gitify: A Menu Bar Client for Multi-Forge Git Notifications

Git notifications on your menu bar. Available on macOS, Windows & Linux.

5,343 stars290 forksTypeScriptMIT

At a glance

What is it?
Gitify consolidates notifications from GitHub, GitLab, Gitea, and Bitbucket into a native tray app for macOS, Windows, and Linux. It uses a forge adapter pattern, but its feature depth varies sharply by platform.
Who is it for?
Adopt Gitify if you work across multiple Git forges and want a single tray icon to manage notifications without opening a browser. Skip it if you rely on Azure DevOps or Gerrit, which are only listed as 'considering' with no adapter yet.
Can I use it commercially?
Yes. MIT is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
Is it still maintained?
Yes. The repository last received commits 5 days ago.
What is it written in?
Mainly TypeScript, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on September 14, 2026, and from our analysis. They are not legal advice.

DEEP OPEN-SOURCE ANALYSIS

The Problem: Notification Fatigue Across Git Hosts

Developers who use more than one Git hosting service face a fragmented notification stream. GitHub, GitLab, Gitea, and Bitbucket each send their own emails or web alerts, and none of them talk to each other. Gitify solves this by pulling notifications from multiple forges into a single menu bar interface. It is aimed at engineers who want to triage issues, pull requests, and mentions without switching between browser tabs or email clients. The README positions it as a cross-platform desktop app for macOS, Windows, and Linux, with a fast, native experience. That target audience is broad, but the real value lands when you have accounts on at least two different forges, because a single-forge user could just use the native GitHub or GitLab UI.

Forge Adapters: The Core Architecture

Gitify does not hard-code a single vendor. Instead, it uses a forge adapter pattern, and the README points to the directory src/renderer/utils/forges/ as the home for these adapters. Each adapter translates the forge's API into a common notification model. The README includes a support matrix that shows what each adapter can do. For GitHub Cloud, you get notifications, mark read, mark done, unsubscribe, and enriched details. GitLab Cloud and Self-Managed also support mark done and enriched details, but not unsubscribe. Gitea, Forgejo, and Codeberg share an adapter that supports notifications and mark read, but no mark done, unsubscribe, or enriched details. Bitbucket Cloud stops at notifications and mark read. This pattern is pragmatic: adding a new forge is a matter of writing a new adapter, but the README notes that each new forge needs a designated maintainer. That is a real governance constraint, not just a technical one.

Installation and First Run

The quick start path is simple: download the binary from gitify.io, install it, launch the app, and authenticate with one or more accounts. For macOS users, Homebrew is an option with the command brew install gitify. The README also lists the build commands for contributors: pnpm install, pnpm build, and pnpm dev. That suggests a standard pnpm-based TypeScript project, but the README does not give further details about the build toolchain or runtime requirements. If you want to run from source, you will need pnpm installed and a Node.js environment, though the exact versions are not stated. The released binaries are the primary distribution channel, and the README links to the latest release page, so checking the release notes for your OS is the first step before installing.

Feature Depth Varies by Forge

The support matrix is the most honest part of the README. It shows that 'notifications' is the only universally supported action across all listed forges. Mark read is supported everywhere except Azure DevOps and Gerrit, which are not implemented. Mark done is missing for Gitea, Bitbucket, and GitHub Enterprise Server below 3.13. Unsubscribe is only available on GitHub variants and GitLab, not on Gitea or Bitbucket. Enriched details, which likely means extra context beyond the raw notification, are absent for Gitea and Bitbucket. If your workflow depends on marking a notification as done or unsubscribing from a thread, you need to confirm that your forge supports it. For example, a Gitea user can see notifications and mark them read, but cannot dismiss them as done. That is a genuine limitation that could push a user back to the web UI for some tasks.

Cross-Platform Trade-offs

Gitify claims macOS, Windows, and Linux support, which is a wider net than many similar tools that are macOS-only. The README does not describe platform-specific behaviors, so it is unclear whether the tray integration works identically on all three. On Linux, tray icons often depend on the desktop environment, and the README does not address that. The screenshots and social image may show a macOS menu bar, but the repository layout does not reveal any platform-specific code paths. That gap matters: a menu bar app on Windows and Linux may behave differently than on macOS, and the documentation is silent. If you are on Linux with a minimal window manager, you should test the tray behavior before committing. The Homebrew cask suggests that macOS packaging is mature, but Windows and Linux installers are not described in the README beyond the general download link.

Development and Maintenance Signals

The repository shows active release activity, with v7.7.0 pushed on 2026-08-28, following v7.6.0 and v7.5.0 within days. That cadence suggests frequent fixes and feature additions, but the README does not include a changelog. The project uses Renovate for dependency updates, as indicated by the Renovate badge, which is a sign of automated maintenance. The CI workflow and release workflow badges imply automated testing and releases, and a SonarQube quality gate is referenced. None of these badges are a substitute for your own review, but they point to a project that runs checks. The license is MIT, which is permissive for reuse, but the README does not state how contributions are handled beyond a link to CONTRIBUTING.md. If you plan to fork or extend it, the adapter pattern is a clear entry point, but you will need to read that contributing guide for the exact policy on new forges.

Alternatives and When Gitify Is the Wrong Tool

The main alternative is the built-in notification systems of each forge, or a web-based aggregator like GitHub's own inbox. The difference in approach is that Gitify is a native desktop client that sits in the tray, while those alternatives are browser tabs or email. Another alternative is a generic notification tool like Franz or Rambox, which wrap multiple web apps in one window, but they do not integrate with forge APIs to mark notifications as read or done. Gitify's advantage is its direct API integration, which gives you actions like mark read and unsubscribe. However, if you only use GitHub, the native GitHub UI already offers those actions, and Gitify adds little beyond a tray icon. If you use Azure DevOps or Gerrit, Gitify is not a viable option because those forges are only listed as 'considering' with no adapter. In those cases, you would be better off with a forge-specific tool or a web-based aggregator.

Editorial conclusion

Adopt Gitify if you work across multiple Git forges and want a single tray icon to manage notifications without opening a browser. Skip it if you rely on Azure DevOps or Gerrit, which are only listed as 'considering' with no adapter yet. Before adopting, verify that the forges you use have the actions you need: for Gitea and Bitbucket, mark-as-done and unsubscribe are not available, and GitHub Enterprise Server below 3.13 lacks mark-as-done. Check the adapter source in src/renderer/utils/forges/ to confirm the exact API endpoints used, and confirm the release cadence matches your need for updates.

Official sources

  1. Official documentation
  2. Official README
  3. Project repository
  4. Release notes
Community notes

Community notes