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

Discord Medium LinkedIn Twitter

Top Flutter WebSocket and RPC packages

Last updated: January 26, 2025

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.


web_socket_channel
👍 1.43K   ⬇️ 5.3M
Dart 3 compatible
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.

shelf_web_socket
👍 124   ⬇️ 5.3M
Dart 3 compatible
Maintenance Status: Good

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

vm_service
👍 52   ⬇️ 4.7M
Dart 3 compatible
Maintenance Status: Good

A library to communicate with a service implementing the Dart VM service protocol.

dds_service_extensions
👍 5   ⬇️ 2.3M
Dart 3 compatible
Maintenance Status: Good

Extension methods for `package:vm_service`, used to make requests a Dart Development Service (DDS) instance.

json_rpc_2
👍 98   ⬇️ 2.2M
Dart 3 compatible
Maintenance Status: Good

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

web_socket
👍 27   ⬇️ 2.2M
Dart 3 compatible
Maintenance Status: Good

Any easy-to-use library for communicating with WebSockets that has multiple implementations.

vm_service_interface
👍 3   ⬇️ 2.1M
Dart 3 compatible
Maintenance Status: Good

A library providing an interface to implement the Dart VM service protocol.

socket_io_client
👍 1.44K   ⬇️ 52.6K
Dart 3 compatible
Maintenance Status: Good

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

grpc
👍 413   ⬇️ 187K
Dart 3 compatible
Maintenance Status: Good

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

mqtt_client
👍 471   ⬇️ 39.4K
Dart 3 compatible
Maintenance Status: Good

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

w_transport
👍 3   ⬇️ 251.1K
Dart 3 compatible
Maintenance Status: Good

Transport library for sending HTTP requests and opening WebSockets. Platform-independent with builtin support for browser and Dart VM (even supports SockJS). Includes mock utilities for testing.

sockjs_client_wrapper
👍 0   ⬇️ 194.7K
Dart 3 compatible
Maintenance Status: Average

A Dart wrapper for the `sockjs-client` JS library.

web_socket_client
👍 166   ⬇️ 12.8K
Dart 3 compatible
Maintenance Status: Good

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

stomp_dart_client
👍 122   ⬇️ 11.3K
Dart 3 compatible
Maintenance Status: Good

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

socket_io
👍 131   ⬇️ 1.1K
Dart 3 compatible
Maintenance Status: Poor

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

socket_io_common
👍 6   ⬇️ 93.5K
Dart 3 compatible
Maintenance Status: Good

Socket.io common parser library.

ws
👍 81   ⬇️ 1.7K
Dart 3 compatible
Maintenance Status: Good

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

mqtt5_client
👍 51   ⬇️ 14.3K
Dart 3 compatible
Maintenance Status: Good

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

phoenix_socket
👍 56   ⬇️ 3.3K
Dart 3 compatible
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.

dart_frog_web_socket
👍 47   ⬇️ 897
Dart 3 compatible
Maintenance Status: Average

WebSocket support for Dart Frog

tcp_socket_connection
👍 42   ⬇️ 232
Dart 3 compatible
Maintenance Status: Poor

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

websocket_universal
👍 35   ⬇️ 1.6K
Dart 3 compatible
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
👍 34   ⬇️ 616
Dart 3 compatible
Maintenance Status: Good

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

action_cable
👍 22   ⬇️ 2.5K
Dart 3 compatible
Maintenance Status: Good

ActionCable client port in dart, available in web, dartVM and flutter.

dgraph
👍 18   ⬇️ 47
Dart 3 compatible
Maintenance Status: Poor

Dgraph dart client.

phoenix_wings
👍 12   ⬇️ 4.1K
Dart 3 compatible
Maintenance Status: Poor

Phoenix Channel client for Dart

flutter_gundb
👍 14   ⬇️ 60
Dart 3 compatible
Maintenance Status: Average

A gunDB port P2P encrypted Communication between multiple users.

socket_io_adapter
👍 6   ⬇️ 33
Dart 3 compatible
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.

adhara_socket_io
👍 86   ⬇️ 5

Maintenance Status: Poor

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

laravel_echo
👍 68   ⬇️ 893

Maintenance Status: Poor

Port of official Laravel Echo package for your Flutter apps.

flutter_socket_io
👍 66   ⬇️ 65

Maintenance Status: Poor

Flutter Socket IO Plugin

websocket_manager
👍 44   ⬇️ 128

Maintenance Status: Poor

A Flutter plugin for Android and iOS supports websocket connection