Flutter Gems is a curated list of 6000+ useful Dart & Flutter packages that are categorized based on functionality.

Discord Medium LinkedIn Twitter

Top Flutter WebSocket and RPC packages

Last updated: December 4, 2024

WebSocket enables real-time and two-way communication between a client and a server, and is popularly used by applications handling real-time data such as chat applications, online gaming and live data streaming.

Whereas, Remote Procedure Call or RPC is a protocol that allows a program to execute code on another address space, typically on a remote server, as if it were a local function call. It abstracts the complexities of remote communication by enabling developers to invoke functions on a different system without dealing with low-level networking details. RPC is used to build distributed systems, where different components or services communicate seamlessly. There are various implementations of RPC, such as gRPC, which use protocols like HTTP/2 for communication. RPC is widely utilized in micro-services architectures and client-server applications, enhancing modularity and scalability.

WebSocket and RPC can be used for building efficient and interactive applications across different domains. Below you will find the top packages that can help you add WebSocket and RPC support in your Flutter apps easily.


socket_io_client
Dart 3 compatible 👍 1.41K
Maintenance Status: Good

Dartlang port of socket.io-client for web, flutter, dartvm to use

web_socket_channel
Dart 3 compatible 👍 1.37K
Maintenance Status: Good

StreamChannel wrappers for WebSockets. Provides a cross-platform WebSocketChannel API, a cross-platform implementation of that API that communicates over an underlying StreamChannel.

mqtt_client
Dart 3 compatible 👍 460
Maintenance Status: Good

A server and browser based MQTT client for Dart supporting normal, secure sockets and websockets.

grpc
Dart 3 compatible 👍 405
Maintenance Status: Good

Dart implementation of gRPC, a high performance, open-source universal RPC framework.

web_socket_client
Dart 3 compatible 👍 159
Maintenance Status: Good

A simple WebSocket client for Dart which includes automatic reconnection logic.

shelf_web_socket
Dart 3 compatible 👍 120
Maintenance Status: Good

A shelf handler that wires up a listener for every connection.

stomp_dart_client
Dart 3 compatible 👍 118
Maintenance Status: Good

Dart STOMP client for easy messaging interoperability. Build with flutter in mind, but should work for every dart application.

json_rpc_2
Dart 3 compatible 👍 96
Maintenance Status: Good

Utilities to write a client or server using the JSON-RPC 2.0 spec.

ws
Dart 3 compatible 👍 79
Maintenance Status: Good

WS: A compact, highly efficient WebSocket library. Easily establish, manage, and reconnect WebSocket connections in real-time apps.

phoenix_socket
Dart 3 compatible 👍 55
Maintenance Status: Good

PhoenixSocket provides a feature-complete implementation of Phoenix Sockets, using a single API based on StreamChannels compatible with any deployment of Flutter.

mqtt5_client
Dart 3 compatible 👍 47
Maintenance Status: Good

A server and browser based MQTT5 client for Dart supporting normal, secure sockets and websockets.

websocket_universal
Dart 3 compatible 👍 34
Maintenance Status: Good

Convenient websocket handler for all platforms (both IO and web/HTML). Websocket messages routing, statuses and other features have easy-to-use interface.

dart_nats
Dart 3 compatible 👍 32
Maintenance Status: Good

A Dart client for the NATS messaging system. Design to use with Dart and flutter.

socket_io_adapter
Dart 3 compatible 👍 5
Maintenance Status: Good

This package is a wrapper for socket_io_client, simplifying connection to a socket.io server, event listening, and event emission to the server.

dart_frog_web_socket
Dart 3 compatible 👍 47
Maintenance Status: Average

WebSocket support for Dart Frog

flutter_gundb
Dart 3 compatible 👍 14
Maintenance Status: Average

A gunDB port P2P encrypted Communication between multiple users.

socket_io
Dart 3 compatible 👍 131
Maintenance Status: Poor

Port of JS/Node library Socket.io. It enables real-time, bidirectional and event-based communication cross-platform.

tcp_socket_connection
Dart 3 compatible 👍 42
Maintenance Status: Poor

A flutter package to connect, listen to and send messages over tcp sockets.

phoenix_wings
Dart 3 compatible 👍 12
Maintenance Status: Poor

Phoenix Channel client for Dart

adhara_socket_io
👍 86
Maintenance Status: Poor

Websocket by socket.io for flutter by adhara, supports both iOS and Android

laravel_echo
👍 68
Maintenance Status: Poor

Port of official Laravel Echo package for your Flutter apps.

flutter_socket_io
👍 66
Maintenance Status: Poor

Flutter Socket IO Plugin

websocket_manager
👍 44
Maintenance Status: Poor

A Flutter plugin for Android and iOS supports websocket connection