Pluskode Client SDK for Flutter - Dart client with HTTP, WebSocket, SSE, gRPC, MQTT, and Binary Stream support
npm install @pluskode/client-flutterpubspec.yaml:
yaml
dependencies:
pluskode_client:
git:
url: https://github.com/pluskode/client-flutter.git
ref: main
`
Or from pub.dev (when published):
`yaml
dependencies:
pluskode_client: ^0.1.0
`
Then run:
`bash
flutter pub get
`
Usage
$3
`dart
import 'package:pluskode_client/pluskode_client.dart';
final client = PluskodeClient(
PluskodeClientOptions(
baseURL: 'http://localhost:3000',
timeout: Duration(seconds: 30),
retries: 3,
),
);
// Set authentication
client.setAuth('Bearer', 'your-jwt-token');
`
$3
`dart
// GET request
final users = await client.get>>('/api/users');
// POST request
final newUser = await client.post
`
$3
`dart
// Subscribe to channel
final unsubscribe = client.subscribe('chat/room1', (data) {
print('Message: $data');
});
// Send message
client.send('chat/room1', {'text': 'Hello!'});
// Unsubscribe
unsubscribe();
`
$3
`dart
final user = await client.rpc`
$3
`dart
// Subscribe
final unsubscribe = client.subscribeMQTT(
'sensors/temperature',
(topic, message, qos) {
print('$topic: $message (QoS: $qos)');
},
options: MQTTOptions(qos: 1),
);
// Publish
await client.publishMQTT(
'sensors/temperature',
'25.5',
options: MQTTOptions(qos: 1),
);
`
$3
`dart
import 'package:flutter/material.dart';
import 'package:pluskode_client/pluskode_client.dart';
class UsersPage extends StatefulWidget {
@override
_UsersPageState createState() => _UsersPageState();
}
class _UsersPageState extends State {
final client = PluskodeClient(
PluskodeClientOptions(baseURL: 'http://localhost:3000'),
);
List `
Dependencies
- http: ^1.1.0 - HTTP client
- web_socket_channel: ^2.4.0` - WebSocket support