Skip to content

swagchat/chat-api

Repository files navigation

MIT License Go Report Card CircleCI Maintainability Test Coverage

swaghat Chat API

swagchat is an open source chat components for your webapps.

chat-api is designed to be easy to introduce to your microservices as well.

Currently developing for version 1

Architecture

Architecture

Repository structure

API Reference

swagger (OpenAPI 2.0)

Sorry, maintenance is not keeping up.

Multiple datastore

You can choose from the followings.

  • sqlite3
  • MySQL
  • Google Cloud SQL

Multiple storage

You can choose from the followings.

  • Local Filesystem
  • Google Cloud Storage
  • Amazon S3

Multiple tracer

You can choose from the followings.

  • jaeger
  • zipkin
  • elastic APM

Quick start

Just run the executable binary

You can download binary from Release page

# In the case of macOS
./swagchat-api_darwin_amd64

docker

docker run swagchat/chat-api

Docker repository

Configuration

The agent has various configuration options that can be specified via the command-line or via configuration files. All of the configuration options are completely optional. Defaults are specified with their descriptions.

Configuration precedence is evaluated in the following order:

  1. Command line arguments
  2. Environment Variables
  3. Configuration files

Specify the setting file (yaml format)

To override the default configuration options, make a copy of defaultConfig.yaml and then specify that file name in runtime parameter config and execute.

./chat-api -config myConfig.yaml

Specify environment variables

You can overwrite it with environment variable.

export HTTP_PORT=80 && ./chat-api

Specify runtime parameters

You can overwrite it with runtime parameters.

./chat-api -httpPort 80

You can check the variables that can be set with the help command of the executable binary.

./chat-api -h

Development

go version

1.8 or higher

License

MIT License.