• Stars
    star
    128
  • Rank 272,687 (Top 6 %)
  • Language
    TypeScript
  • License
    Apache License 2.0
  • Created over 2 years ago
  • Updated about 1 month ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Instant Messaging web desktop

OpenIM Electron Demo ๐Ÿ’ฌ๐Ÿ’ป

OpenIM Docs โ€ข OpenIM Server โ€ข openim-sdk-wasm โ€ข openim-sdk-core


OpenIM Electron Demo is an open-source instant messaging application built on OpenIM SDK Wasm, OpenIM Server, and Electron. It demonstrates how to quickly integrate instant messaging capabilities into any web app using OpenIM.

Tech Stack ๐Ÿ› ๏ธ

Live Demo ๐ŸŒ

Give it a try at https://web-enterprise.rentsoft.cn.

Dev Setup ๐Ÿ› ๏ธ

It is recommended to use node version 16.x-18.x.

Follow these steps to set up a local development environment:

  1. Run npm install to install all dependencies.
  2. Modify the request address to your own OpenIM Server IP in the following files:

    Note: You need to deploy OpenIM Server first, the default port of OpenIM Server is 10001, 10002, 10008.

    • src/config/index.ts
      export const WS_URL = "ws://your-server-ip:10001";
      export const API_URL = "http://your-server-ip:10002";
      export const USER_URL = "http://your-server-ip:10008";
  3. Run npm run dev to start the development server. Visit http://localhost:5173 to see the result. An Electron application will be launched by default.
  4. Start development! ๐ŸŽ‰

Build ๐Ÿš€

This project allows building web applications and Electron applications separately, but there will be some differences during the build process.

Web Application

  1. Replace the contents of the package_build_web.json file with package.json, removing dependencies required for Electron to run. Also, modify the build script.
  2. Run the following command to build the web application:
    npm run build
  3. The build result will be located in the dist folder.

Electron Application

  1. Replace the contents of the package_build.json file with package.json, keeping only the dependencies required for Electron to function. This significantly reduces the package size. Also, modify the packaging script.
  2. Run one of the following commands to build the Electron application:
    • macOS:
      npm run build:mac
    • Windows:
      npm run build:win
    • Linux:
      npm run build:linux
  3. The build result will be located in the package folder.

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.

More Repositories

1

open-im-server

IM Chat
Go
12,719
star
2

open-im-sdk-flutter

IM SDK Flutter
Dart
338
star
3

openim-sdk-core

Instant Messaging
Go
277
star
4

open-im-flutter-demo

Demo developed based on flutter open IM SDK.
Dart
253
star
5

open-im-sdk-android

IM Android
Java
212
star
6

open-im-sdk-ios

An OpenIM SDK in Objective-C for iOS
Objective-C
148
star
7

open-im-uniapp-demo

IM
Vue
123
star
8

openkf

AI ChatGPT ๆ™บ่ƒฝๅฎขๆœ | Supports chatgpt and llm large language models. OpenKF is an online customer service system that improves communication for enterprises and open-source communities with customizable features.
Go
100
star
9

open-im-sdk-web

IM web jssdk
TypeScript
88
star
10

open-im-android-demo

IM Android
Java
73
star
11

open-im-sdk-uniapp

ๅณๆ—ถ้€š่ฎฏIM uniapp
Objective-C
58
star
12

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.
Go
51
star
13

openim-docs

OpenIM system documentation
Shell
44
star
14

open-im-ios-demo

Demo developed based on OpenIMSDK.
Swift
42
star
15

open-im-sdk-reactnative

IM ReactNative
Objective-C
37
star
16

openim-docker

openim-docker configuration for deploying OpenIM. Provides a build solution for a stable distribution, as well as a docker compose deployment strategy
Shell
24
star
17

open-im-sdk-web-wasm

JS SDK for OpenIM Web use by Webassembly of go
TypeScript
19
star
18

ChatGPT

ChatGPT integrated IM
Python
15
star
19

cpp_go

Call Go function from C/C++ function
Go
15
star
20

community

Community Management for OpenIM
Shell
14
star
21

openmeeting-server

An open-source video conferencing solution, and alternative to Zoom
12
star
22

helm-charts

helm charts repository for openim
Smarty
11
star
23

Open-IM-h5-Demo

Vue
10
star
24

Open-IM-Demo-Register

Go
10
star
25

openim-h5-demo

TypeScript
8
star
26

tools

Go
6
star
27

protocol

Go
6
star
28

openim-charts

OpenIM-Charts: Kubernetes-ready Helm charts for deploying OpenIM, an open-source instant messaging system. Simplify deployment and management of scalable and secure IM infrastructure on Kubernetes.
Smarty
6
star
29

open-im-server-k8s-deploy

Open-IM-Server-k8s-deploy
Shell
6
star
30

gomake

gomake is a cross-platform compilation tool built on Mage, specifically designed for Go language projects. It offers comprehensive support for various operating systems and CPU architectures, covering the entire workflow from compilation to launching, monitoring, and stopping services.
Go
6
star
31

openim-sdk-core-ios

Objective-C
5
star
32

docs

OpenIM documentation v3
MDX
4
star
33

openim-sdk-cpp

IM SDK C/C++
C++
4
star
34

openim-miniprogram-demo

JavaScript
3
star
35

sdk_advanced_function

This is sdk_advanced_function for vip
Go
2
star
36

k8s-jenkins

Makefile
2
star
37

openim-reactnative-demo

TypeScript
2
star
38

.github

OpenIMSDK aim to be the top open source community
2
star
39

open-im-sdk-core-Indexdb-doc

Document description of the indexDB interface used by the openIM client
2
star
40

openKeeper

openIM zookeeper
Go
1
star
41

open_utils

Go
1
star
42

OpenMetaOffice-iOS

1
star
43

OpenMetaOffice-Flutter

Business authorization required
Dart
1
star
44

openim-msggateway-proxy

Go
1
star
45

open-im-sdk-dotnet

C#
1
star
46

automation

OpenIM Automation, cicd, and actions, Robotics.
1
star