Ei kuvausta

lufei dae357bae9 Init project 7 kuukautta sitten
.github dae357bae9 Init project 7 kuukautta sitten
.husky dae357bae9 Init project 7 kuukautta sitten
.vscode dae357bae9 Init project 7 kuukautta sitten
docs dae357bae9 Init project 7 kuukautta sitten
e2e dae357bae9 Init project 7 kuukautta sitten
electron dae357bae9 Init project 7 kuukautta sitten
patches dae357bae9 Init project 7 kuukautta sitten
public dae357bae9 Init project 7 kuukautta sitten
src dae357bae9 Init project 7 kuukautta sitten
.eslintignore dae357bae9 Init project 7 kuukautta sitten
.eslintrc.js dae357bae9 Init project 7 kuukautta sitten
.gitignore dae357bae9 Init project 7 kuukautta sitten
.npmrc dae357bae9 Init project 7 kuukautta sitten
.prettierignore dae357bae9 Init project 7 kuukautta sitten
.prettierrc.json dae357bae9 Init project 7 kuukautta sitten
LICENSE dae357bae9 Init project 7 kuukautta sitten
README.md dae357bae9 Init project 7 kuukautta sitten
README.zh-CN.md dae357bae9 Init project 7 kuukautta sitten
commitlint.config.js dae357bae9 Init project 7 kuukautta sitten
electron-builder.json5 dae357bae9 Init project 7 kuukautta sitten
index.html dae357bae9 Init project 7 kuukautta sitten
package.json dae357bae9 Init project 7 kuukautta sitten
package_electron.json dae357bae9 Init project 7 kuukautta sitten
playwright.config.ts dae357bae9 Init project 7 kuukautta sitten
postcss.config.js dae357bae9 Init project 7 kuukautta sitten
tailwind.config.js dae357bae9 Init project 7 kuukautta sitten
tsconfig.json dae357bae9 Init project 7 kuukautta sitten
tsconfig.node.json dae357bae9 Init project 7 kuukautta sitten
vite.config.ts dae357bae9 Init project 7 kuukautta sitten
vite.legacy.config.ts dae357bae9 Init project 7 kuukautta sitten

README.md

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. Run the following command to build the web application:

    npm run build
    
  2. The build result will be located in the dist folder.

Electron Application

  1. Replace the contents of the package_electron.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 :busts_in_silhouette:

Community Meetings :calendar:

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 :bookmark_tabs:.

Who are using OpenIM :eyes:

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 :page_facing_up:

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