• Stars
    star
    155
  • Rank 240,864 (Top 5 %)
  • Language
    TypeScript
  • License
    Apache License 2.0
  • Created almost 3 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 DocsOpenIM Serveropenim-sdk-wasmopenim-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

openim-sdk-core

Instant Messaging
Go
352
star
3

open-im-sdk-flutter

IM SDK Flutter
Dart
338
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
143
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
140
star
9

open-im-sdk-web

IM web jssdk
TypeScript
103
star
10

open-im-android-demo

IM Android
Java
73
star
11

open-im-sdk-uniapp

即时通讯IM uniapp
Objective-C
63
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
38
star
16

open-im-sdk-web-wasm

JS SDK for OpenIM Web use by Webassembly of go
TypeScript
34
star
17

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
18

openmeeting-server

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

tools

Go
17
star
20

ChatGPT

ChatGPT integrated IM
Python
15
star
21

cpp_go

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

community

Community Management for OpenIM
Shell
14
star
23

openim-h5-demo

TypeScript
13
star
24

protocol

Go
11
star
25

helm-charts

helm charts repository for openim
Smarty
11
star
26

Open-IM-Demo-Register

Go
10
star
27

Open-IM-h5-Demo

Vue
10
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
8
star
29

docs

OpenIM documentation v3
MDX
7
star
30

open-im-server-k8s-deploy

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

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
32

openim-sdk-core-ios

Objective-C
5
star
33

openim-sdk-cpp

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

openim-reactnative-demo

TypeScript
4
star
35

openim-miniprogram-demo

JavaScript
3
star
36

openim-sdk-electron

TypeScript
2
star
37

sdk_advanced_function

This is sdk_advanced_function for vip
Go
2
star
38

k8s-jenkins

Makefile
2
star
39

.github

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

open-im-sdk-core-Indexdb-doc

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

openKeeper

openIM zookeeper
Go
1
star
42

open_utils

Go
1
star
43

automation

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

OpenMetaOffice-iOS

1
star
45

open-im-sdk-dotnet

C#
1
star
46

OpenMetaOffice-Flutter

Business authorization required
Dart
1
star
47

openim-msggateway-proxy

Go
1
star