Skip to content
forked from openimsdk/chat

A business server that includes user registration and login, deployed together with Open-IM-Server, can be used to set up a chat product.

License

Notifications You must be signed in to change notification settings

hanzhixiao/chat

 
 

Repository files navigation

chat

Modifying configuration items

Refer to config/config.yaml for configuration instructions

🧩 Awesome features

  1. This repository implement a business system, which consists of two parts: User related function and background management function
  2. The business system depends on the api of the im system (Open-IM-Server repository) and implement various functions by calling the api of the im system
  3. User related part includes some regular functions like user login, user register, user info update, etc.
  4. Background management provides api for admin to manage the im system containing functions like user management, message mangement,group management,etc.

🛫 Quick start

Note: You can get started quickly with OpenIM Chat.

📦 Installation

git clone https://github.com/OpenIMSDK/chat openim-chat && export openim-chat=$(pwd)/openim-chat && cd $openim-chat && make

Developing chat

If you wish to deploy chat, then you should first install and deploy OpenIM, this Open-IM-Server repository

git clone -b release-v3.1 https://github.com/OpenIMSDK/Open-IM-Server.git openim && export openim=$(pwd)/openim && cd $openim
sudo docker compose up -d

Installing Chat

make install

🛫 Quick start

Note: You can get started quickly with chat.

🚀 Run

Note: We need to run the backend server first

make build

📖 Contributors get up to speed

Be good at using Makefile, it can ensure the quality of your project.

Usage: make <TARGETS> ...

Targets:
  all                          Build all the necessary targets. 🏗️
  build                        Build binaries by default. 🛠️
  go.build                     Build the binary file of the specified platform. 👨‍💻
  build-multiarch              Build binaries for multiple platforms. 🌍
  tidy                         tidy go.mod 📦
  style                        Code style -> fmt,vet,lint 🎨
  fmt                          Run go fmt against code. ✨
  vet                          Run go vet against code. 🔍
  generate                     Run go generate against code and docs. ✅
  lint                         Run go lint against code. 🔎
  test                         Run unit test ✔️
  cover                        Run unit test with coverage. 🧪
  docker-build                 Build docker image with the manager. 🐳
  docker-push                  Push docker image with the manager. 🔝
  docker-buildx-push           Push docker image with the manager using buildx. 🚢
  copyright-verify             Validate boilerplate headers for assign files. 📄
  copyright-add                Add the boilerplate headers for all files. 📝
  swagger                      Generate swagger document. 📚
  serve-swagger                Serve swagger spec and docs. 🌐
  clean                        Clean all builds. 🧹
  help                         Show this help info. ℹ️

Note: It's highly recommended that you run make all before committing your code. 🚀

make all

Chat Start

./scripts/start_all.sh

Chat Detection

./scripts/check_all.sh

Chat Stop

./scripts/stop_all.sh

Contributing

Contributions to this project are welcome! Please see CONTRIBUTING.md for details.

Community Meetings

We want anyone to get involved in our community, we offer gifts and rewards, and we welcome you to join us every Thursday night.

We take notes of each biweekly meeting in GitHub discussions, and our minutes are written in Google Docs.

Who are using Open-IM-Server

The user case studies page includes the user list of the project. You can leave a 📝comment to let us know your use case.

avatar

🚨 License

chat is licensed under the Apache 2.0 license. See LICENSE for the full license text.

About

A business server that includes user registration and login, deployed together with Open-IM-Server, can be used to set up a chat product.

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Go 81.7%
  • Shell 10.6%
  • Makefile 5.3%
  • Dockerfile 2.2%
  • Batchfile 0.2%