All Projects → clarencejychan → console-chat

clarencejychan / console-chat

Licence: MIT license
Chat on your terminal with other users through a gRPC service

Programming Languages

go
31211 projects - #10 most used programming language

Projects that are alternatives of or similar to console-chat

gosproto
基于云风的sproto二进制标准上的描述文件及代码生成工具
Stars: ✭ 52 (+147.62%)
Mutual labels:  protobuf, protobuf3
protobuf-d
Protocol Buffers Compiler Plugin and Support Library for D
Stars: ✭ 32 (+52.38%)
Mutual labels:  protobuf, protobuf3
savetheworldwithgo
Build systems with Go examples
Stars: ✭ 81 (+285.71%)
Mutual labels:  protobuf, grpc-go
liftbridge-api
Protobuf definitions for the Liftbridge gRPC API. https://github.com/liftbridge-io/liftbridge
Stars: ✭ 15 (-28.57%)
Mutual labels:  protobuf, pubsub
Prototool
Your Swiss Army Knife for Protocol Buffers
Stars: ✭ 4,932 (+23385.71%)
Mutual labels:  protobuf, grpc-go
protobuf-smalltalk
Protocol buffers support for Smalltalk
Stars: ✭ 14 (-33.33%)
Mutual labels:  protobuf, protobuf3
grpc-chat
Simple Chat Server/Client implemented with gRPC
Stars: ✭ 107 (+409.52%)
Mutual labels:  protobuf, grpc-go
vscode-protolint
A protobuf linter for visual studio code
Stars: ✭ 31 (+47.62%)
Mutual labels:  protobuf, protobuf3
Centrifuge
Real-time messaging library for Go with scalability in mind
Stars: ✭ 446 (+2023.81%)
Mutual labels:  protobuf, pubsub
go-chat
go-chat.使用Go基于WebSocket开发的web聊天应用。单聊,群聊。文字,图片,语音,视频消息,屏幕共享,剪切板图片,基于WebRTC的P2P语音通话,视频聊天。
Stars: ✭ 516 (+2357.14%)
Mutual labels:  protobuf, chat-application
pronto
Clojure support for protocol buffers
Stars: ✭ 66 (+214.29%)
Mutual labels:  protobuf, protobuf3
hsproto
Hearthstone Protobuf files
Stars: ✭ 31 (+47.62%)
Mutual labels:  protobuf
stockholm
💵 Modern Python library for working with money and monetary amounts. Human friendly and flexible approach for development. 100% test coverage + built-in support for GraphQL and Protocol Buffers transports using current best-practices.
Stars: ✭ 26 (+23.81%)
Mutual labels:  protobuf
kafka-protobuf-serde
Serializer/Deserializer for Kafka to serialize/deserialize Protocol Buffers messages
Stars: ✭ 52 (+147.62%)
Mutual labels:  protobuf
ws.q
Simple library for websockets in kdb+/q
Stars: ✭ 27 (+28.57%)
Mutual labels:  pubsub
pg-ipc
IPC over PostgreSQL LISTEN/NOTIFY/UNLISTEN exposed as an EventEmitter
Stars: ✭ 27 (+28.57%)
Mutual labels:  pubsub
Flutter-Chat-Bar
Link to the package -. https://pub.dartlang.org/packages/flutter_chat_bar
Stars: ✭ 39 (+85.71%)
Mutual labels:  chat-application
pg-pubsub
Reliable PostgreSQL LISTEN/NOTIFY with inter-process lock support
Stars: ✭ 50 (+138.1%)
Mutual labels:  pubsub
Anakin
Codegeneration tool for isomorphic server and mobile Go apps with gRPC & Protobuf. Share code between your backend, Android & iOS app! 🌞
Stars: ✭ 17 (-19.05%)
Mutual labels:  protobuf
protobuf-ue4
Build Protobuf for Unreal Engine 4 with Jenkins Pipeline.
Stars: ✭ 26 (+23.81%)
Mutual labels:  protobuf

console-chat

A project designed to learn about Go, gRPC and Redis Pub/Sub.

The application has a server where many clients can connect to in order to send messages back and forth through Redis as a message broker.

The publisher/subscriber model allows clients to subscribe to the server, while the server publishes incoming client requests back out.

Demo

alt text

Installation

Set up a redis server (instructions found here) and make the necessary configurations in the server/clients to point towards the correct port.

Get the generated code using go get -u github.com/clarencejychan/consolechat-grpc

Run go run server.go or go build server.go in console-chat/server/cmd and run the binary.

Run go run client.go or go build client.go in console-chat/client and run the binary on as many consoles as you would like.

Follow the prompts on the screen and try typing into the client consoles!

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].