appleboy/gorush

A push notification server written in Go (Golang).

View on GitHub ↗Jump to charts ↓

Summary Information

Updated 44 minutes ago
Added to GitGenius on September 7th, 2026
Created on March 22nd, 2016
Open Issues & Pull Requests: 68 (+0)
GitHub issues: Enabled
Number of forks: 887
Total Stargazers: 8,767 (+0)
Total Subscribers: 187 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 7.8 days
Mean response time: 53.7 days
90th percentile: 123.1 days
Tracked items: 30

How this project is maintained

Around half of the issues opened in the past year never receive a reply. 90% of open issues come from outside the core team, so the backlog reflects real-world use rather than internal planning. Only 6% of issues opened in the past year have been closed. Three people close 100% of everything that gets resolved.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 21
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 704 days
Stale 30+ days: 21
Stale 90+ days: 17

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

  • bug (3)
  • enhancement (2)
  • Feature (1)

Most active issues this week

No issue events were indexed in the last 7 days.

Detailed Description

gorush is a push notification server written in Go.

The tool addresses the need to send push notifications across multiple mobile platforms through a single unified interface. It works by exposing a REST API and command-line interface that accept notification payloads and route them to the appropriate platform-specific services: Apple Push Notification service for iOS, Firebase Cloud Messaging for Android, and Huawei Mobile Services for Huawei devices. The server is built on the Gin web framework and handles the complexity of platform-specific authentication and message formatting internally.

Developers should choose gorush if they need a lightweight, self-hosted notification service that supports iOS, Android, and Huawei devices without vendor lock-in. It suits projects that want to centralize push notification logic in a dedicated microservice rather than embedding platform SDKs directly in application code. The tool offers multiple deployment options including Docker, Kubernetes, AWS Lambda, and Netlify Functions, making it adaptable to various infrastructure setups. It also provides a gRPC service interface alongside its REST API for different integration patterns.

The project shows consistent maintenance with regular updates addressing bug fixes and feature improvements. Development activity demonstrates responsiveness to user issues and pull requests. The codebase maintains stability while incorporating enhancements to support additional platforms and deployment scenarios.