connectycube_sdk 2.14.1 copy "connectycube_sdk: ^2.14.1" to clipboard
connectycube_sdk: ^2.14.1 copied to clipboard

Flutter SDK for messaging, video calling and push notifications. WebRTC and XMPP based.

76
likes
120/ 160
pub points
90%
popularity

We analyzed this package 44 hours ago, and awarded it 120 pub points (of a possible 160):

OK
Follow Dart file conventions
30 / 30trigger folding of the section

10/10 points: Provide a valid pubspec.yaml

5/5 points: Provide a valid README.md

5/5 points: Provide a valid CHANGELOG.md

10/10 points: Use an OSI-approved license

Detected license: LGPL-3.0.

partial
Provide documentation
10 / 20trigger folding of the section

0/10 points: 20% or more of the public API has dartdoc comments

312 out of 2512 API elements (12.4 %) have documentation comments.

Providing good documentation for libraries, classes, functions, and other API elements improves code readability and helps developers find and use your API. Document at least 20% of the public API elements.

To highlight public API members missing documentation consider enabling the public_member_api_docs lint.

Some symbols that are missing documentation: connectycube_calls, connectycube_calls.JANUS_PREFIX, connectycube_calls.JOIN_JANUS_ROLE_PUBLISHER, connectycube_calls.JOIN_JANUS_ROLE_SUBSCRIBER, connectycube_calls.MEDIA_TYPE_AUDIO.

10/10 points: Package has an example

failed
Platform support
20 / 20trigger folding of the section

20/20 points: Supports 5 of 6 possible platforms (iOS, Android, Web, Windows, macOS, Linux)

  • ✓ Android

  • ✓ iOS

  • ✓ Windows

  • ✓ Linux

  • ✓ macOS

These platforms are not supported:

Package does not support platform `Web`.

Because:

  • package:connectycube_sdk/connectycube_sdk.dart that imports:
  • package:connectycube_sdk/connectycube_calls.dart that imports:
  • package:connectycube_sdk/src/calls/utils/widgets/screen_select_dialog.dart that imports:
  • package:flutter_webrtc/flutter_webrtc.dart that declares support for platforms: Android, iOS, Windows, Linux, macOS.

These issues are present but do not affect the score, because they may not originate in your package:

Package does not support platform `Android`.

Because:

  • package:connectycube_sdk/connectycube_sdk.dart that imports:
  • package:connectycube_sdk/connectycube_whiteboard.dart that imports:
  • package:connectycube_sdk/connectycube_core.dart that imports:
  • package:connectycube_sdk/src/core/utils/cube_logger.dart that imports:
  • package:connectycube_sdk/src/core/models/cube_settings.dart that imports:
  • package:device_info_plus/device_info_plus.dart that imports:
  • package:device_info_plus/src/device_info_plus_windows.dart that imports:
  • package:win32_registry/win32_registry.dart that declares support for platforms: Windows.
Package does not support platform `iOS`.

Because:

  • package:connectycube_sdk/connectycube_sdk.dart that imports:
  • package:connectycube_sdk/connectycube_whiteboard.dart that imports:
  • package:connectycube_sdk/connectycube_core.dart that imports:
  • package:connectycube_sdk/src/core/utils/cube_logger.dart that imports:
  • package:connectycube_sdk/src/core/models/cube_settings.dart that imports:
  • package:device_info_plus/device_info_plus.dart that imports:
  • package:device_info_plus/src/device_info_plus_windows.dart that imports:
  • package:win32_registry/win32_registry.dart that declares support for platforms: Windows.
Package does not support platform `Linux`.

Because:

  • package:connectycube_sdk/connectycube_sdk.dart that imports:
  • package:connectycube_sdk/connectycube_whiteboard.dart that imports:
  • package:connectycube_sdk/connectycube_core.dart that imports:
  • package:connectycube_sdk/src/core/utils/cube_logger.dart that imports:
  • package:connectycube_sdk/src/core/models/cube_settings.dart that imports:
  • package:device_info_plus/device_info_plus.dart that imports:
  • package:device_info_plus/src/device_info_plus_windows.dart that imports:
  • package:win32_registry/win32_registry.dart that declares support for platforms: Windows.
Package does not support platform `macOS`.

Because:

  • package:connectycube_sdk/connectycube_sdk.dart that imports:
  • package:connectycube_sdk/connectycube_whiteboard.dart that imports:
  • package:connectycube_sdk/connectycube_core.dart that imports:
  • package:connectycube_sdk/src/core/utils/cube_logger.dart that imports:
  • package:connectycube_sdk/src/core/models/cube_settings.dart that imports:
  • package:device_info_plus/device_info_plus.dart that imports:
  • package:device_info_plus/src/device_info_plus_windows.dart that imports:
  • package:win32_registry/win32_registry.dart that declares support for platforms: Windows.

0/0 points: WASM compatibility

Package not compatible with runtime wasm

Because:

  • package:connectycube_sdk/connectycube_sdk.dart that imports:
  • package:connectycube_sdk/connectycube_whiteboard.dart that imports:
  • package:connectycube_sdk/connectycube_core.dart that imports:
  • package:connectycube_sdk/src/core/utils/platform_utils.dart that imports:
  • package:universal_io/io.dart that imports:
  • package:universal_io/src/_exports_in_vm.dart that imports:
  • package:universal_io/src/new_universal_http_client.dart that imports:
  • package:universal_io/src/_helpers.dart that imports:
  • package:universal_io/src/_helpers_impl_elsewhere.dart that imports:
  • dart:io

This package is not compatible with runtime wasm, and will not be rewarded full points in a future version of the scoring model.

See https://dart.dev/web/wasm for details.

failed
Pass static analysis
30 / 50trigger folding of the section

30/50 points: code has no errors, warnings, lints, or formatting issues

Found 50 issues. Showing the first 2:

WARNING: The value of the field '_timeOutInSec' isn't used.

lib/src/calls/signaling/web_socket_connection.dart:12:20

   ╷
12 │   static const int _timeOutInSec = 10;
   │                    ^^^^^^^^^^^^^
   ╵

To reproduce make sure you are using the lints_core and run flutter analyze lib/src/calls/signaling/web_socket_connection.dart

WARNING: The operand can't be null, so the condition is always 'true'.

lib/src/calls/utils/cube_stats_reports_manager.dart:78:15

   ╷
78 │           if (micLevel == null && volume != null) {
   │               ^^^^^^^^^^^
   ╵

To reproduce make sure you are using the lints_core and run flutter analyze lib/src/calls/utils/cube_stats_reports_manager.dart

failed
Support up-to-date dependencies
30 / 40trigger folding of the section

0/10 points: All of the package dependencies are supported in the latest version

Package Constraint Compatible Latest
collection ^1.18.0 1.18.0 1.19.1
crypto ^3.0.5 3.0.6 3.0.6
dart_webrtc 1.4.9 1.4.9 1.4.9
device_info_plus ^10.1.2 10.1.2 11.1.0
flutter flutter 0.0.0 0.0.0
flutter_webrtc 0.11.7 0.11.7 0.12.1+hotfix.1
http ^1.2.2 1.2.2 1.2.2
http_parser ^4.0.2 4.0.2 4.1.1
intl ^0.19.0 0.19.0 0.19.0
mime ^1.0.6 1.0.6 2.0.0
objectid ^3.0.0 3.1.0 3.1.0
path ^1.9.0 1.9.1 1.9.1
universal_io ^2.2.2 2.2.2 2.2.2
uuid ^4.5.0 4.5.1 4.5.1
web ^1.0.0 1.1.0 1.1.0
web_socket_channel ^3.0.1 3.0.1 3.0.1
webrtc_interface 1.2.0 1.2.0 1.2.0
xmpp_stone 0.4.4-dev.7 0.4.4-dev.7 0.4.4-dev.7
Transitive dependencies
Package Constraint Compatible Latest
archive - 3.6.1 3.6.1
async - 2.12.0 2.12.0
boolean_selector - 2.1.2 2.1.2
characters - 1.3.0 1.3.1
clock - 1.1.2 1.1.2
console - 4.1.0 4.1.0
cryptoutils - 0.5.0 0.5.0
device_info_plus_platform_interface - 7.0.1 7.0.1
ffi - 2.1.3 2.1.3
file - 7.0.1 7.0.1
fixnum - 1.1.1 1.1.1
flutter_web_plugins - 0.0.0 0.0.0
image - 4.3.0 4.3.0
js - 0.7.1 0.7.1
logging - 1.3.0 1.3.0
matcher - 0.12.17 0.12.17
material_color_utilities - 0.11.1 0.12.0
meta - 1.15.0 1.16.0
path_provider - 2.1.5 2.1.5
path_provider_android - 2.2.12 2.2.12
path_provider_foundation - 2.4.0 2.4.0
path_provider_linux - 2.2.1 2.2.1
path_provider_platform_interface - 2.1.2 2.1.2
path_provider_windows - 2.3.0 2.3.0
petitparser - 6.0.2 6.0.2
platform - 3.1.6 3.1.6
platform_detect - 2.1.0 2.1.0
plugin_platform_interface - 2.1.8 2.1.8
pub_semver - 2.1.4 2.1.4
quiver - 3.2.2 3.2.2
sky_engine - 0.0.99 0.0.99
source_span - 1.10.0 1.10.0
sprintf - 7.0.0 7.0.0
stack_trace - 1.12.0 1.12.0
stream_channel - 2.1.2 2.1.2
string_scanner - 1.4.0 1.4.0
synchronized - 3.3.0+3 3.3.0+3
term_glyph - 1.2.1 1.2.1
test_api - 0.7.3 0.7.3
tuple - 2.0.2 2.0.2
typed_data - 1.4.0 1.4.0
unorm_dart - 0.3.0 0.3.0
vector_math - 2.1.4 2.1.4
web_socket - 0.1.6 0.1.6
win32 - 5.8.0 5.8.0
win32_registry - 1.1.5 2.0.0
xdg_directories - 1.1.0 1.1.0
xml - 6.5.0 6.5.0

To reproduce run dart pub outdated --no-dev-dependencies --up-to-date --no-dependency-overrides.

Found 3 issues. Showing the first 2:

The constraint `^10.1.2` on device_info_plus does not support the stable version `11.0.0`, that was published 25 days ago.

When device_info_plus is 30 days old, this package will no longer be awarded points in this category.

Try running dart pub upgrade --major-versions device_info_plus to update the constraint.

The constraint `0.11.7` on flutter_webrtc does not support the stable version `0.12.0`, that was published 18 days ago.

When flutter_webrtc is 30 days old, this package will no longer be awarded points in this category.

Try running dart pub upgrade --major-versions flutter_webrtc to update the constraint.

10/10 points: Package supports latest stable Dart and Flutter SDKs

20/20 points: Compatible with dependency constraint lower bounds

pub downgrade does not expose any static analysis error.

Analyzed with Pana 0.22.15, Flutter 3.24.4, Dart 3.5.4.

Check the analysis log for details.