即时通讯IM
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
Go to file
fengyun.rui 65c1c412da
refactor: gin prometheus for api (#1371)
1 year ago
.docker-compose_cfg feat: add license 1 year ago
.github build: build openim image (#1381) 1 year ago
CHANGELOG ☀️ feat: Enhancing OpenIM with Integrated E2E Testing and CI/CD Enhancements (#1359) 1 year ago
assets Large refactoring projects: OpenIM automation, scripting, and openimctl refactoring (#825) 1 year ago
build ☀️ feat: Enhancing OpenIM with Integrated E2E Testing and CI/CD Enhancements (#1359) 1 year ago
cmd ☀️ feat: Enhancing OpenIM with Integrated E2E Testing and CI/CD Enhancements (#1359) 1 year ago
config ☀️ feat: Enhancing OpenIM with Integrated E2E Testing and CI/CD Enhancements (#1359) 1 year ago
deployments ☀️ feat: Enhancing OpenIM with Integrated E2E Testing and CI/CD Enhancements (#1359) 1 year ago
docs ☀️ feat: Enhancing OpenIM with Integrated E2E Testing and CI/CD Enhancements (#1359) 1 year ago
internal perf: improve gzip performance with sync.pool (#1321) 1 year ago
pkg refactor: gin prometheus for api (#1371) 1 year ago
scripts ☀️ feat: Enhancing OpenIM with Integrated E2E Testing and CI/CD Enhancements (#1359) 1 year ago
test ☀️ feat: Enhancing OpenIM with Integrated E2E Testing and CI/CD Enhancements (#1359) 1 year ago
tools docs: add openim cluster helm chart (#1291) 1 year ago
.dockerignore feat(release-v3.4): Enhanced Build, Deployment, and Configuration Management for Optimized Performance and Automation (#1255) 1 year ago
.env ☀️ feat: Enhancing OpenIM with Integrated E2E Testing and CI/CD Enhancements (#1359) 1 year ago
.gitignore docs: add openim cluster helm chart (#1291) 1 year ago
.golangci.yml docs: add openim cluster helm chart (#1291) 1 year ago
CHANGELOG.md feat: add link file 1 year ago
CODE_OF_CONDUCT.md Feat/add test scripts (#1341) 1 year ago
CONTRIBUTING.md ☀️ feat: Enhancing OpenIM with Integrated E2E Testing and CI/CD Enhancements (#1359) 1 year ago
Dockerfile fix: set openim volume (#1051) 1 year ago
LICENSE v3 - main to cut out 1 year ago
Makefile ☀️ feat: Enhancing OpenIM with Integrated E2E Testing and CI/CD Enhancements (#1359) 1 year ago
README-zh_CN.md ☀️ feat: Enhancing OpenIM with Integrated E2E Testing and CI/CD Enhancements (#1359) 1 year ago
README.md ☀️ feat: Enhancing OpenIM with Integrated E2E Testing and CI/CD Enhancements (#1359) 1 year ago
chat ☀️ feat: Enhancing OpenIM with Integrated E2E Testing and CI/CD Enhancements (#1359) 1 year ago
docker-compose.yml ☀️ feat: Enhancing OpenIM with Integrated E2E Testing and CI/CD Enhancements (#1359) 1 year ago
go.mod perf: auto set runtime maxprocs in docker (#1339) 1 year ago
go.sum perf: auto set runtime maxprocs in docker (#1339) 1 year ago
go.work fix: reset branch. (#1277) 1 year ago
install.sh ☀️ feat: Enhancing OpenIM with Integrated E2E Testing and CI/CD Enhancements (#1359) 1 year ago
install_guide.sh ☀️ feat: Enhancing OpenIM with Integrated E2E Testing and CI/CD Enhancements (#1359) 1 year ago

README.md

Ⓜ️ About OpenIM

OpenIM isn't just an open-source instant messaging component, it's an integral part of your application ecosystem. Check out this diagram to understand how AppServer, AppClient, OpenIMServer, and OpenIMSDK interact.

App-OpenIM Relationship

🚀 About OpenIMSDK

OpenIMSDK seamlessly integrates into your application, delivering a rich, real-time messaging experience without requiring intricate UI integration. It provides:

  • Local Storage: For quick data retrieval and message synchronization.
  • Listener Callbacks: Ensuring real-time message interactivity.
  • API Encapsulation: Streamlining development processes.
  • Connection Management: Guaranteeing reliable message delivery.

It's crafted in Golang and supports cross-platform deployment, ensuring a coherent messaging experience across all platforms.

👉 Explore GO SDK

🌐 About OpenIMServer

OpenIMServer, meticulously developed in Golang, ensures a stellar instant messaging server capability with a multifold approach:

  • Modular Composition: It's comprised of several modules, such as the gateway and multiple RPC services, offering a versatile messaging environment.
  • Microservices Architecture: Supporting cluster modes, it assures outstanding performance and scalability to manage communication effectively across various instances.
  • Diverse Deployment Options: Adapts to your operational preferences, offering deployment via source code, Kubernetes, or Docker.

Enhanced Business Functionalities:

  • REST API: OpenIMServer provides REST API for business systems, aiming to empower your operations with additional functionalities like group creation and message push via backend interfaces.
  • Callbacks: To expand its utility across varied business forms, OpenIMServer offers callback capabilities. That is, it sends a request to the business server before or after an event occurs, such as sending a message, enriching the interaction and data exchange flow in the communication processes.

👉 Learn More

🚀 Quick Start

You can quickly learn OpenIM engineering solutions, all it takes is one simple command:

$ make demo

🤲 In order to facilitate the user experience, we have provided a variety of deployment solutions, you can choose your own deployment method according to the list below:

🛠️ To start developing OpenIM

Open in Dev Container

OpenIM Our goal is to build a top-level open source community. We have a set of standards, in the Community repository.

If you'd like to contribute to this Open-IM-Server repository, please read our contributor documentation.

Before you start, please make sure your changes are in demand. The best for that is to create a new discussion OR Slack Communication, or if you find an issue, report it first.

👥 Community

📆 Community Meetings

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

Our conference is in the OpenIM Slack 🎯, then you can search the Open-IM-Server pipeline to join

We take notes of each biweekly meeting in GitHub discussions, Our historical meeting notes, as well as replays of the meetings are available at Google Docs 📑.

👀 Who are using OpenIM

Check out our user case studies page for a list of the project users. Don't hesitate to leave a 📝comment and share your use case.

📄 License

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

The OpenIM logo, including its variations and animated versions, displayed in this repository OpenIM under the assets/logo and assets/logo-gif directories, are protected by copyright laws.

🔮 Thanks to our contributors!