A simple and fast user-facing messaging and data replication server built with WebSockets and Go.
Guble is a messaging server written in Go designed for real-time user interaction and data replication across multiple devices. It provides a persistent message store, WebSocket and REST APIs, and supports push notifications via Firebase Cloud Messaging (FCM) and Apple Push Notification services (APNS). The project aims to be a simple, fast, and reliable message bus that is easy to consume from web and mobile clients while being scalable and self-contained.
Developers building real-time applications like chat, notifications, or data sync across web and mobile clients who need a self-contained messaging server with built-in push notification support. It's suitable for teams wanting a Go-based solution with minimal external dependencies.
Developers choose Guble for its self-contained deployment with no mandatory external dependencies, built-in support for push notifications (FCM and APNS), and hierarchical topic routing for flexible message subscriptions. It offers both WebSocket and REST APIs with persistent storage options, making it a batteries-included solution for user-facing messaging scenarios.
websocket based messaging server written in golang
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
No mandatory external dependencies and includes Docker images, making it easy to deploy without complex infrastructure setup, as highlighted in the Docker section.
Integrates directly with Firebase Cloud Messaging (FCM) and Apple Push Notification Service (APNS), eliminating the need for separate push services, with configurable connectors.
Supports topics and subtopics for flexible message subscription and organization, enabling efficient routing as described in the protocol reference.
Offers multiple persistence options (file, memory, PostgreSQL) for different use cases, allowing transparent live and offline fetching.
The project is at version 0.4 with acknowledged breaking changes in protocol and API until version 0.7, making it risky for production deployments.
Client libraries are minimal, with the JavaScript client in an early stage and no mention of other language support, reducing out-of-the-box usability.
Key features like server replication, HTTPS support, and improved authentication are on the roadmap but not yet implemented, limiting scalability and security.
Configuring push notifications or SMS requires multiple environment variables and specific certificates (e.g., for APNS), adding deployment complexity.