Go Messaging

Open-source Go projects categorized as Messaging

Top 23 Go Messaging Projects

  • nsq

    A realtime distributed messaging platform

    Project mention: NSQ: Open-source realtime distributed messaging, billions of messages / day | news.ycombinator.com | 2024-01-09
  • NATS

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

    Project mention: Revolutionizing Real-Time Alerts with AI, NATs and Streamlit | dev.to | 2024-02-18

    Imagine you have an AI-powered personal alerting chat assistant that interacts using up-to-date data. Whether it's a big move in the stock market that affects your investments, any significant change on your shared SharePoint documents, or discounts on Amazon you were waiting for, the application is designed to keep you informed and alert you about any significant changes based on the criteria you set in advance using your natural language. In this post, we will learn how to build a full-stack event-driven weather alert chat application in Python using pretty cool tools: Streamlit, NATS, and OpenAI. The app can collect real-time weather information, understand your criteria for alerts using AI, and deliver these alerts to the user interface.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

  • open-im-server

    IM Chat

    Project mention: Free Open-source messaging solution | /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 | /r/techsupport | 2023-03-13
  • Asynq

    Simple, reliable, and efficient distributed task queue in Go

    Project mention: Looking for a language agnostic Go task queue with Redis | /r/golang | 2023-09-12

    EDIT : I think the best for my case will be to use the asynq library with a custom js client, it's quite easy to implement (Detailed here)

  • Centrifugo

    Scalable real-time messaging server in a language-agnostic way. Self-hosted alternative to Pubnub, Pusher, Ably. Set up once and forever.

    Project mention: Centrifugo v5.1.0 released, with new powers for real-time messaging tasks, now with proxy GRPC subscription streams – similar to WebSocketd but over the network | /r/golang | 2023-10-14
  • gorush

    A push notification server written in Go (Golang).

  • Onboard AI

    ChatGPT with full context of any GitHub repo. Onboard AI learns any GitHub repo in minutes and lets you chat with it to locate functionality, understand different parts, and generate new code. Use it for free at app.getonboardai.com.

  • machinery

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

    Project mention: Looking for library recommendations: Django -> Golang port | /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? | /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: Ask HN: Who is hiring? (December 2023) | news.ycombinator.com | 2023-12-01
  • watermill

    Building event-driven applications the easy way in Go.

    Project mention: Microservices communication | /r/golang | 2023-12-09

    I’ve successfully worked on projects using an asynchronous event-driven way of connecting services. I really like the decoupling of business logic and the events triggering it. I highly recommend https://github.com/ThreeDotsLabs/watermill to be more flexible when it comes to choosing the actual technology driving the async patter. It might be NATS today but requirements might change and you need to change. Watermill prepares you for this.

  • NATS

    Golang client for NATS, the cloud native messaging system.

    Project mention: High-Performance server for NATS.io, the cloud and edge native messaging system | news.ycombinator.com | 2023-07-21
  • Jocko

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

  • Confluent Kafka Golang Client

    Confluent's Apache Kafka Golang client

    Project mention: book about golang and kafka | /r/golang | 2023-06-04

    There are two main libraries that people use to write clients Confluent Kafka and segment io kafka

  • Mercure

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

    Project mention: PHP homies, I hear ya. | /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.

  • notify

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

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

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

  • liftbridge

    Lightweight, fault-tolerant message streams.

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

    The official Go package for NSQ

  • gopush-cluster

    Golang push server cluster

  • EventBus

    [Go] Lightweight eventbus with async compatibility for Go (by asaskevich)

  • teamgram-server

    Unofficial open source mtproto server written in golang with compatible telegram client.

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

  • WorkOS

    The modern API for authentication & user identity. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

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 2024-02-18.

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 24,390
2 NATS 14,360
3 open-im-server 12,634
4 Tinode 11,212
5 Asynq 8,217
6 Centrifugo 7,704
7 gorush 7,490
8 machinery 7,211
9 berty 7,207
10 Benthos 7,185
11 watermill 6,556
12 NATS 5,020
13 Jocko 4,856
14 Confluent Kafka Golang Client 4,334
15 Mercure 3,679
16 APNs2 2,908
17 notify 2,592
18 liftbridge 2,515
19 go-nsq 2,514
20 gopush-cluster 2,078
21 EventBus 1,602
22 teamgram-server 1,595
23 Uniqush-Push 1,521
The modern API for authentication & user identity.
The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.