videosdk 1.2.3 copy "videosdk: ^1.2.3" to clipboard
videosdk: ^1.2.3 copied to clipboard

Video SDK Flutter to simply integrate Audio & Video Calling API or Live Video Streaming API to your app with just a few lines of code.

113
likes
105/ 160
pub points
93%
popularity

We analyzed this package 6 days ago, and awarded it 105 pub points (of a possible 160):

failed
Follow Dart file conventions
15 / 30trigger folding of the section

0/10 points: Provide a valid pubspec.yaml

Failed to verify repository URL.

Please provide a valid repository URL in pubspec.yaml, such that:

  • repository can be cloned,
  • a clone of the repository contains a pubspec.yaml, which:,
    • contains name: videosdk,
    • contains a version property, and,
    • does not contain a publish_to property.

Repository has no matching pubspec.yaml with name: videosdk.

0/5 points: Provide a valid README.md

Links in `README.md` should be secure. 1 link is insecure.

README.md:17:3

   ╷
17 │   <a href="http://youtube.com/videosdk?sub_confirmation=1">
   │   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   ╵

Use https URLs instead.

5/5 points: Provide a valid CHANGELOG.md

10/10 points: Use an OSI-approved license

Detected license: BSD-3-Clause.

partial
Provide documentation
10 / 20trigger folding of the section

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

49 out of 314 API elements (15.6 %) 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: videosdk, videosdk.AudioDeviceInfo, videosdk.AudioDeviceInfo.AudioDeviceInfo, videosdk.Character, videosdk.Character.Character.

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

  • ✓ macOS

  • ✓ Web

These platforms are not supported:

Package does not support platform `Linux`.

Because:

  • package:videosdk/videosdk.dart that declares support for platforms: Android, iOS, Windows, macOS, Web.

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:videosdk/videosdk.dart that imports:
  • package:videosdk/src/core/videosdk.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:videosdk/videosdk.dart that imports:
  • package:videosdk/src/core/videosdk.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 `Windows`.

Because:

  • package:videosdk/videosdk.dart that imports:
  • package:videosdk/src/core/room/stream.dart that imports:
  • package:videosdk/src/core/webrtc/webrtc_client.dart that imports:
  • package:videosdk/src/core/webrtc/src/transport.dart that imports:
  • package:videosdk_room_stats/videosdk_room_stats.dart that declares support for platforms: Android, iOS.
Package does not support platform `macOS`.

Because:

  • package:videosdk/videosdk.dart that imports:
  • package:videosdk/src/core/room/stream.dart that imports:
  • package:videosdk/src/core/webrtc/webrtc_client.dart that imports:
  • package:videosdk/src/core/webrtc/src/transport.dart that imports:
  • package:videosdk_room_stats/videosdk_room_stats.dart that declares support for platforms: Android, iOS.
Package does not support platform `Web`.

Because:

  • package:videosdk/videosdk.dart that imports:
  • package:videosdk/src/core/room/custom_track.dart that imports:
  • package:videosdk_webrtc/flutter_webrtc.dart that declares support for platforms: Android, iOS, Windows, Linux, macOS.

0/0 points: WASM compatibility

Package not compatible with runtime wasm

Because:

  • package:videosdk/videosdk.dart that imports:
  • package:videosdk/src/core/room/custom_track.dart that imports:
  • package:videosdk_webrtc/flutter_webrtc.dart that imports:
  • package:videosdk_webrtc/src/native/ios/audio_configuration.dart that imports:
  • package:videosdk_webrtc/src/native/utils.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.

0/0 points: Swift Package Manager support

Package does not support the Swift Package Manager on macOS

It does not contain macos/videosdk/Package.swift.

This package for iOS or macOS does not support the Swift Package Manager. It will not receive full points in a future version of the scoring model.

See https://docs.flutter.dev/to/spm 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 271 issues. Showing the first 2:

WARNING: The '!' will have no effect because the receiver can't be null.

lib/src/core/room/audio_html/providers/audio_html_web.dart:15:47

   ╷
15 │     if (audioConsumer == null || audioConsumer!.track == null) {
   │                                               ^
   ╵

To reproduce make sure you are using the lints_core and run flutter analyze lib/src/core/room/audio_html/providers/audio_html_web.dart

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

lib/src/core/room/audio_html/providers/audio_html_web.dart:15:55

   ╷
15 │     if (audioConsumer == null || audioConsumer!.track == null) {
   │                                                       ^^^^^^^
   ╵

To reproduce make sure you are using the lints_core and run flutter analyze lib/src/core/room/audio_html/providers/audio_html_web.dart

OK
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
dart_webrtc 1.4.9 1.4.9 1.4.9
device_info_plus 11.0.0 11.0.0 11.1.1
encrypt ^5.0.3 5.0.3 5.0.3
events2 ^1.0.0 1.0.0 1.0.0
flutter flutter 0.0.0 0.0.0
flutter_foreground_task 8.10.4 8.10.4 8.13.0
flutter_web_plugins flutter 0.0.0 0.0.0
h264_profile_level_id ^0.2.1 0.2.1 0.2.1
http ^1.2.2 1.2.2 1.2.2
permission_handler 11.3.1 11.3.1 11.3.1
platform_detect 2.1.0 2.1.0 2.1.0
plugin_platform_interface ^2.1.8 2.1.8 2.1.8
random_string ^2.3.1 2.3.1 2.3.1
sdp_transform ^0.3.2 0.3.2 0.3.2
synchronized ^3.3.0 3.3.0+3 3.3.0+3
videosdk_otel ^0.0.2 0.0.2 0.0.2
videosdk_room_stats 0.0.4 0.0.4 0.0.4
videosdk_webrtc 0.0.4 0.0.4 0.0.4
web 1.1.0 1.1.0 1.1.0
Transitive dependencies
Package Constraint Compatible Latest
_fe_analyzer_shared - 72.0.0 76.0.0
_macros - 0.3.2 0.3.2
analyzer - 6.7.0 6.11.0
args - 2.6.0 2.6.0
asn1lib - 1.5.8 1.5.8
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
convert - 3.1.2 3.1.2
coverage - 1.11.0 1.11.0
crypto - 3.0.6 3.0.6
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
frontend_server_client - 4.0.0 4.0.0
glob - 2.1.2 2.1.2
http_multi_server - 3.2.1 3.2.1
http_parser - 4.0.2 4.1.1
io - 1.0.4 1.0.4
js - 0.7.1 0.7.1
logging - 1.3.0 1.3.0
macros - 0.1.2-main.4 0.1.3-main.0
matcher - 0.12.16+1 0.12.17
material_color_utilities - 0.11.1 0.12.0
meta - 1.15.0 1.16.0
mime - 2.0.0 2.0.0
node_preamble - 2.0.2 2.0.2
package_config - 2.1.0 2.1.0
path - 1.9.1 1.9.1
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
permission_handler_android - 12.0.13 12.0.13
permission_handler_apple - 9.4.5 9.4.5
permission_handler_html - 0.1.3+2 0.1.3+2
permission_handler_platform_interface - 4.2.3 4.2.3
permission_handler_windows - 0.2.1 0.2.1
platform - 3.1.6 3.1.6
pointycastle - 3.9.1 3.9.1
pool - 1.5.1 1.5.1
protobuf - 2.1.0 3.1.0
pub_semver - 2.1.4 2.1.4
quiver - 3.2.2 3.2.2
shared_preferences - 2.3.3 2.3.3
shared_preferences_android - 2.3.3 2.3.3
shared_preferences_foundation - 2.5.3 2.5.3
shared_preferences_linux - 2.4.1 2.4.1
shared_preferences_platform_interface - 2.4.1 2.4.1
shared_preferences_web - 2.4.2 2.4.2
shared_preferences_windows - 2.4.1 2.4.1
shelf - 1.4.1 1.4.2
shelf_packages_handler - 3.0.2 3.0.2
shelf_static - 1.1.3 1.1.3
shelf_web_socket - 2.0.0 2.0.0
sky_engine - 0.0.99 0.0.99
source_map_stack_trace - 2.1.2 2.1.2
source_maps - 0.10.12 0.10.12
source_span - 1.10.0 1.10.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
term_glyph - 1.2.1 1.2.1
test - 1.25.8 1.25.8
test_api - 0.7.3 0.7.3
test_core - 0.6.5 0.6.5
typed_data - 1.4.0 1.4.0
vector_math - 2.1.4 2.1.4
vm_service - 14.3.1 14.3.1
watcher - 1.1.0 1.1.0
web_socket - 0.1.6 0.1.6
web_socket_channel - 3.0.1 3.0.1
webkit_inspection_protocol - 1.2.1 1.2.1
webrtc_interface - 1.2.0 1.2.0
win32 - 5.8.0 5.8.0
win32_registry - 1.1.5 2.0.0
xdg_directories - 1.1.0 1.1.0
yaml - 3.1.2 3.1.2

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

Found 3 issues. Showing the first 2:

The constraint `1.18.0` on collection does not support the stable version `1.19.0`.

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

The constraint `11.0.0` on device_info_plus does not support the stable version `11.1.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.

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.