msg

module
v0.0.0-...-98550de Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 31, 2022 License: MIT

README

Msg

ci

Msg is gRPC-based backend for messaging written in golang.

Goals

Future goals:

  • Implement message service which will allow users to send messages to chat rooms
  • Unit tests and github workflow

Already achieved:

  • Authentication and authorization with JWT and refresh tokens
  • PostgreSQL as persistance storage
  • gRPC and protobuf service creation with help of Makefile and well-prepared code organization

Compiling proto messages

Run

$ make proto-c

For that to work you need to install

$ go install google.golang.org/protobuf/cmd/protoc-gen-go@v1.28
$ go install google.golang.org/grpc/cmd/protoc-gen-go-grpc@v1.2

Env variables

Create .env file and put it in a project root

.env file has to contain

API_HOST=":50051"
MESSAGE_HOST=":50052"

JWT_SECRET="s3cr3t"
JWT_DURATION_MIN=15
REFRESH_DURATION_DAYS=90


POSTGRES_DB="dbname"
POSTGRES_USER="dbuser"
POSTGRES_PASSWORD="dbuserpassword"

PGADMIN_DEFAULT_EMAIL="example@example.com"
PGADMIN_DEFAULT_PASSWORD="password"
PGADMIN_CONFIG_SERVER_MODE="False"

RABBITMQ_DEFAULT_USER="user"
RABBITMQ_DEFAULT_PASS="password"

Run

$ docker-compose up -d

Directories

Path Synopsis
cmd
internal

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL