Go Messaging

Open-source Go projects categorized as Messaging

Top 23 Go Messaging Projects

  • nsq

    A realtime distributed messaging platform

    Project mention: MQTT vs. Kafka: An IoT Advocate's Perspective | news.ycombinator.com | 2023-03-14

    Interesting. What are you thoughts on NSQ?


    Was looking at it earlier today, but haven't ever tried it out.

  • NATS

    High-Performance server for NATS.io, the cloud and edge native messaging system.

    Project mention: Kubernetes home lab V using it production | reddit.com/r/kubernetes | 2023-05-27

    I have to look into nats.io, this is new territory for me. It's clear that creating test/staging environments when Kafka is involved can be tricky. Blog by a colleague on trying to do this at scale with less DIY.

  • InfluxDB

    Access the most powerful time series database as a service. Ingest, store, & analyze all types of time series data in a fully-managed, purpose-built database. Keep data forever with low-cost storage and superior data compression.

  • Open-IM-Server


    Project mention: Free Open-source messaging solution | reddit.com/r/iOSProgramming | 2023-05-27

    If you are interested in Open-IM-Server, you can find the source code on GitHub: Source code , where you can also join the community and contribute to the project. You can also join the Telegram group or the WeChat group to chat with other developers and get support.

  • Tinode

    Instant messaging platform. Backend in Go. Clients: Swift iOS, Java Android, JS webapp, scriptable command line; chatbots

    Project mention: Instant messaging solution for projects at different scale | reddit.com/r/techsupport | 2023-03-13
  • sarama

    Sarama is a Go library for Apache Kafka.

    Project mention: Klient - a native, statically-compiled, command line client for Kafka | reddit.com/r/golang | 2023-02-10

    I've used mainly sarama wrapped with a bit of bespoke helper libraries. Never really looked into others, just grabbed one that was actively maintained and went for it.

  • Centrifugo

    Scalable real-time messaging server in a language-agnostic way. Set up once and forever.

    Project mention: Millions of Active WebSockets with Node.js | news.ycombinator.com | 2023-02-20
  • gorush

    A push notification server written in Go (Golang).

    Project mention: Open-Source alternative to Google's Firebase auth. Take back control of user authentication data. | reddit.com/r/PrivacyGuides | 2022-06-11

    Checkout gorush for that


    ONLYOFFICE Docs — document collaboration in your environment. Powerful document editing and collaboration in your app or environment. Ultimate security, API and 30+ ready connectors, SaaS or on-premises

  • machinery

    Machinery is an asynchronous task queue/job queue based on distributed message passing.

    Project mention: Looking for library recommendations: Django -> Golang port | reddit.com/r/golang | 2023-02-24
  • berty

    Berty is a secure peer-to-peer messaging app that works with or without internet access, cellular data or trust in the network

    Project mention: How to explore writing an app for ipfs with rust? | reddit.com/r/ipfs | 2023-03-05

    Not written in Rust, but may be Berty can give you some ideas?

  • Benthos

    Fancy stream processing made operationally mundane

    Project mention: Show HN: Open-source Auth0 alternative Ory Kratos v0.13 released – nearing v1.0 | news.ycombinator.com | 2023-04-19
  • Asynq

    Simple, reliable, and efficient distributed task queue in Go

    Project mention: Recommendation for a selfhosted worker/task queue runner? | reddit.com/r/selfhosted | 2023-05-16

    Never used it, but it appears to fit most of the criteria. https://github.com/hibiken/asynq

  • watermill

    Building event-driven applications the easy way in Go.

    Project mention: Small EDA/Micro service Project | reddit.com/r/golang | 2023-05-04

    These conditions have led me to discover two packages watermill.io and go-kit. Both of these seem to do what I want and I am thinking of implementing the project using watermill and go Chanels and deploying to a server or some sort.

  • Jocko

    Kafka implemented in Golang with built-in coordination (No ZK dep, single binary install, Cloud Native)

    Project mention: Ask HN: What interesting problems are you working on? ( 2022 Edition) | news.ycombinator.com | 2022-09-16

    Still early stages but building on top of this. - https://github.com/travisjeffery/jocko

  • NATS

    Golang client for NATS, the cloud native messaging system.

    Project mention: Asyncapi with Go | reddit.com/r/golang | 2022-12-09
  • Confluent Kafka Golang Client

    Confluent's Apache Kafka Golang client

    Project mention: Getting sum type values from a map | reddit.com/r/vlang | 2022-11-14

    As my first "real world" (ish) project in Vlang, I'm trying to copy https://github.com/confluentinc/confluent-kafka-go, which is a Go wrapper for Kafka C client library, https://github.com/edenhill/librdkafka

  • Mercure

    An open, easy, fast, reliable and battery-efficient solution for real-time communications

    Project mention: PHP homies, I hear ya. | reddit.com/r/ProgrammerHumor | 2023-05-13

    Are you aware of things like websockets and mercure.rocks?

  • APNs2

    ⚡ 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.

  • liftbridge

    Lightweight, fault-tolerant message streams.

    Project mention: Kafka alternatives | reddit.com/r/apachekafka | 2023-05-22
  • go-nsq

    The official Go package for NSQ

  • notify

    A dead simple Go library for sending notifications to various messaging services.

    Project mention: libsignal-go built for go1.20+ | reddit.com/r/golang | 2023-03-05

    That would be amazing and greatly appreciated. We at Notify would love to add support for a Signal service!

  • gopush-cluster

    Golang push server cluster

  • mainflux

    Industrial IoT Messaging and Device Management Platform

    Project mention: How to create a django microservices monorepo? | reddit.com/r/django | 2022-09-21

    For something more advanced you can look at this example but this is very advanced, its from an IoT platform written in Golang - https://github.com/mainflux/mainflux

  • Uniqush-Push

    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: Uniqush: Unified server-side push notifications for Android/iOS/kindle | news.ycombinator.com | 2022-06-02
  • SonarLint

    Clean code begins in your IDE with SonarLint. Up your coding game and discover issues early. SonarLint is a free plugin that helps you find & fix bugs and security issues from the moment you start writing code. Install from your favorite IDE marketplace today.

NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020). The latest post mention was on 2023-05-27.

Go Messaging related posts


What are some of the best open-source Messaging projects in Go? This list will help you:

Project Stars
1 nsq 23,504
2 NATS 12,830
3 Open-IM-Server 10,962
4 Tinode 10,303
5 sarama 10,013
6 Centrifugo 7,084
7 gorush 7,063
8 machinery 6,853
9 berty 6,761
10 Benthos 6,203
11 Asynq 6,112
12 watermill 5,603
13 Jocko 4,718
14 NATS 4,571
15 Confluent Kafka Golang Client 3,958
16 Mercure 3,356
17 APNs2 2,812
18 liftbridge 2,449
19 go-nsq 2,416
20 notify 2,264
21 gopush-cluster 2,070
22 mainflux 2,066
23 Uniqush-Push 1,485
Clean code begins in your IDE with SonarLint
Up your coding game and discover issues early. SonarLint is a free plugin that helps you find & fix bugs and security issues from the moment you start writing code. Install from your favorite IDE marketplace today.