Use Go's WebSocket-based communication chat software.
Coroutines in the code repository go are very lightweight. When each client is accessed, a coroutine is enabled for each client, which can achieve greater concurrency on a stand-alone machine. At the same time, go channel can perfectly decouple client access and message forwarding and other operations.
Through go-chat, you can master the use of channel and Select, the use of ORM framework, the use of web framework Gin, configuration management, log operation, and other commonly used technologies in some projects.
Based on react, UI and basic components are used with ant design. It can be very convenient to build the front-end interface.
Selecting a single page frame on the interface makes it more convenient to write a chat interface. For example, for example, message reminders, you can receive messages in one interface for reminders, and the message acceptance will not be affected by changing pages or viewing other content. Front-end code repository: https://github.com/kone-net/go-chat-web
Voice, text, pictures, video messages 
Video call 
Screen Sharing 
one-file branch: This branch is implemented in one file, including voice, text, pictures, video messages, video calls, voice calls, screen sharing. main branch: It is to split each part. Split the Panel into, left, center, and right. The sending file, picture, and file on the right is split into smaller components.