Top 23 Go Messaging Projects
A realtime distributed messaging platformProject mention: Nsq - A realtime distributed messaging platform | reddit.com/r/github_trends | 2022-05-20
High-Performance server for NATS.io, the cloud and edge native messaging system.Project mention: Ask HN: What are some examples of elegant software? | news.ycombinator.com | 2022-05-02
I've been pleased by NATS (https://nats.io/). I like how it builds its functionality on layers of abstractions, from the most basic (pub/sub), to request/response on top of that, to key/value and persistent streams on top of that. The CLI is simple to use and you can learn it in an afternoon, but it's robust enough to deploy.
Deliver Cleaner and Safer Code - Right in Your IDE of Choice!. SonarLint is a free and open source IDE extension that identifies and catches bugs and vulnerabilities as you code, directly in the IDE. Install from your favorite IDE marketplace today.
Instant messaging platform. Backend in Go. Clients: Swift iOS, Java Android, JS webapp, scriptable command line; chatbotsProject mention: Tinode chat: Instant messaging platform with inline images, attachments and anonymous users | reddit.com/r/u_VeronikaKerman | 2021-09-09
Sarama is a Go library for Apache Kafka.Project mention: Sarama - Go library for Apache Kafka. | reddit.com/r/github_trends | 2022-05-15
OpenIM: Instant messaging open source project based on go built by IM technology experts. Backend in Go.（由IM技术专家打造的基于 Go 实现的即时通讯（IM）项目，从服务端到客户端SDK开源即时通讯（IM）整体解决方案，可以轻松替代第三方IM云服务，打造具备聊天、社交功能的app。）Project mention: Open-IM-Server: An Open Source Instant Messaging Server | reddit.com/r/programming | 2021-11-06
A push notification server written in Go (Golang).Project mention: Push notification server in golang | reddit.com/r/golang | 2022-05-07
Machinery is an asynchronous task queue/job queue based on distributed message passing.Project mention: Using a High-Level RabbitMQ Client in Go | reddit.com/r/golang | 2022-03-10
I use this one: https://github.com/RichardKnop/machinery
Less time debugging, more time building. Scout APM allows you to find and fix performance issues with no hassle. Now with error monitoring and external services monitoring, Scout is a developer's best friend when it comes to application development.
Scalable real-time messaging server in a language-agnostic way. Set up once and forever.Project mention: Centrifugo – self-hosted alternative to public real-time messaging clouds like pusher.com, ably.com, pubnub.com | reddit.com/r/selfhosted | 2022-05-05
Berty is a secure peer-to-peer messaging app that works with or without internet access, cellular data or trust in the networkProject mention: Offline Communication During the Long March | reddit.com/r/pakistan | 2022-05-23
First, I'd recommend Berty (https://berty.tech/) as opposed to Bridgefy due to security concerns and the fact that it is open-source. Berty can function over bluetooth just like Bridgefy, so it'll still work when the cell service goes down (albeit only at a short range).
Kafka implemented in Golang with built-in coordination (No ZK dep, single binary install, Cloud Native)Project mention: Which library/project do you wish was ported to golang? | reddit.com/r/golang | 2022-01-09
Fancy stream processing made operationally mundaneProject mention: Programming languages | reddit.com/r/dataengineering | 2022-05-08
You can do some DE work with Golang https://www.benthos.dev/
Golang client for NATS, the cloud native messaging system.Project mention: Distributed communication patterns with NATS | dev.to | 2022-03-03
Install the nats.go package
Confluent's Apache Kafka Golang clientProject mention: Sharing event schema ( type ) between producer and a consumer | reddit.com/r/golang | 2022-01-10
Last time I checked Confluent does not have a Schema Registry for Go, only for Java, so instead of that I rely on using the guidelines defined for the serialized data, specifically I've used gPRC+Protobuf for doing this, together with buf to detect breaking changes; buf has their own schema registry perhaps that could be something you could explore as well.
Simple, reliable, and efficient distributed task queue in GoProject mention: gocelery | reddit.com/r/golang | 2022-04-12
Temporal is even more complex, but is from the Go world. asynq is one of many implementations for Go that offer celery-like complexity. Celery itself is very python-esqe, true. But the problem it solves is not. And those problems need to be solved in Go as well.
Server-sent live updates: protocol and reference implementationProject mention: How would I automatically update how much users are signed up for each group? | reddit.com/r/PHPhelp | 2022-05-11
Polling is kind of ok (data might change between poll events), but real-time updates are better. So If you don't mind adding an extra service, then take a look at mercure.
⚡ HTTP/2 Apple Push Notification Service (APNs) push provider for Go — Send push notifications to iOS, tvOS, Safari and OSX apps, using the APNs HTTP/2 protocol.
Lightweight, fault-tolerant message streams.Project mention: On Efficiently Partitioning a Topic in Apache Kafka | news.ycombinator.com | 2022-05-22
Apache Pulsar might be worth a look, but it's actually more complex under the hood than Kafka, but has a lot of features built-in that either aren't in FOSS Kafka yet, like tiered storage, or won't be until Confluent doesn't dominate the PMC (like an integrated schema registry), or just can't be done very nicely, if at all, like decent multi-tenancy.
That said, it's a fast moving target, the code quality last I looked was patchy in places, ditto the documentation for both it and Bookkeeper, and the admin overhead is higher (managing bookies and brokers and Zookeepers vs. just brokers and ZK with Kafka, or when KRaft is production ready, just brokers).
The official Go package for NSQProject mention: Distributed IM Service in Golang | dev.to | 2022-04-19
nsq : simple, high performance, distributed MQ
Golang push server cluster
Industrial IoT Messaging and Device Management Platform (by mainflux)
💨 A real time messaging system to build a scalable in-app notifications, multiplayer games, chat apps in web and mobile apps.Project mention: GitHub - Clivern/Beaver: 💨 A real time messaging system to build a scalable in-app notifications, multiplayer games, chat apps in web and mobile apps. | reddit.com/r/golang | 2021-10-16
Uniqush is a free and open source software system which provides a unified push service for server side notification to apps on mobile devices.Project mention: A Self Hosted and Open Source Alternative to Google’s Firebase | reddit.com/r/linux | 2022-03-22
https://uniqush.org/ and/or https://unifiedpush.org/ may be of interest as well.
💬 Instant messaging server for the Extensible Messaging and Presence Protocol (XMPP).Project mention: Jackal 0.58.0 – Go XMPP Server | reddit.com/r/golang | 2022-03-04
Go Messaging related posts
Nsq - A realtime distributed messaging platform
1 project | reddit.com/r/github_trends | 20 May 2022
Is there a package for sending notifications to multiple destinations like Laravel?
1 project | reddit.com/r/golang | 18 May 2022
Sarama - Go library for Apache Kafka.
1 project | reddit.com/r/github_trends | 15 May 2022
1 project | reddit.com/r/dataengineering | 8 May 2022
Mercure: Real-Time Made Easy
1 project | news.ycombinator.com | 8 May 2022
Push notification server in golang
2 projects | reddit.com/r/golang | 7 May 2022
NSQ: A realtime distributed messaging platform
1 project | news.ycombinator.com | 6 May 2022
What are some of the best open-source Messaging projects in Go? This list will help you:
|13||Confluent Kafka Golang Client||3,297|
Are you hiring? Post a new remote job listing for free.