dive_ui 0.2.0 copy "dive_ui: ^0.2.0" to clipboard
dive_ui: ^0.2.0 copied to clipboard

PlatformmacOS

The Dive UI widgets. A toolkit for video recording and streaming.

3
likes
140/ 160
pub points
47
downloads

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

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

10/10 points: Provide a valid pubspec.yaml

Homepage URL doesn't exist.

At the time of the analysis https://divekit.dev was unreachable. Make sure that the website is reachable via HEAD requests.

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: MIT.

OK
Provide documentation
20 / 20trigger folding of the section

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

105 out of 267 API elements (39.3 %) have documentation comments.

Some symbols that are missing documentation: dive_audio_meter, dive_audio_meter.DiveAudioMeter.vertical, dive_audio_meter.DiveAudioMeter.volumeMeter, dive_audio_meter.DiveAudioMeterPaint.state, dive_audio_meter.DiveAudioMeterPaint.vertical.

10/10 points: Package has an example

failed
Platform support
20 / 20trigger folding of the section

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

  • ✓ macOS

These platforms are not supported:

Package does not support platform `Android`.

Because:

  • package:dive_ui/dive_ui.dart that imports:
  • package:dive_ui/dive_video_settings_dialog.dart that imports:
  • package:dive/dive.dart that imports:
  • package:dive/src/dive_video_info.dart that imports:
  • package:dive/src/dive_core.dart that imports:
  • package:dive_obslib/dive_obslib.dart that declares support for platforms: macOS.
Package does not support platform `iOS`.

Because:

  • package:dive_ui/dive_ui.dart that imports:
  • package:dive_ui/dive_video_settings_dialog.dart that imports:
  • package:dive/dive.dart that imports:
  • package:dive/src/dive_video_info.dart that imports:
  • package:dive/src/dive_core.dart that imports:
  • package:dive_obslib/dive_obslib.dart that declares support for platforms: macOS.
Package does not support platform `Windows`.

Because:

  • package:dive_ui/dive_ui.dart that imports:
  • package:dive_ui/dive_video_settings_dialog.dart that imports:
  • package:dive/dive.dart that imports:
  • package:dive/src/dive_video_info.dart that imports:
  • package:dive/src/dive_core.dart that imports:
  • package:dive_obslib/dive_obslib.dart that declares support for platforms: macOS.
Package does not support platform `Linux`.

Because:

  • package:dive_ui/dive_ui.dart that imports:
  • package:dive_ui/dive_video_settings_dialog.dart that imports:
  • package:dive/dive.dart that imports:
  • package:dive/src/dive_video_info.dart that imports:
  • package:dive/src/dive_core.dart that imports:
  • package:dive_obslib/dive_obslib.dart that declares support for platforms: macOS.
Package does not support platform `Web`.

Because:

  • package:dive_ui/dive_ui.dart that imports:
  • package:dive_ui/dive_video_settings_dialog.dart that imports:
  • package:dive/dive.dart that imports:
  • package:dive/src/dive_video_info.dart that imports:
  • package:dive/src/dive_core.dart that imports:
  • package:dive_obslib/dive_obslib.dart that declares support for platforms: macOS.

0/0 points: WASM compatibility

Package not compatible with runtime wasm

Because:

  • package:dive_ui/dive_ui.dart that imports:
  • package:dive_ui/dive_video_settings_dialog.dart that imports:
  • package:dive/dive.dart that imports:
  • package:dive/src/dive_video_info.dart that imports:
  • package:dive/src/dive_core.dart that imports:
  • package:dive_obslib/dive_obslib.dart that imports:
  • package:dive_obslib/src/dive_pointer.dart that imports:
  • package:ffi/ffi.dart that imports:
  • package:ffi/src/utf8.dart that imports:
  • dart:ffi

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.

partial
Pass static analysis
40 / 50trigger folding of the section

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

Found 24 issues. Showing the first 2:

INFO: Statements in an if should be enclosed in a block.

lib/dive_audio_meter.dart:202:7

    ╷
202 │       fillRect(canvas, magnitudeColor, magnitudePosition - miniBox, y, miniBox, height);
    │       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    ╵

To reproduce make sure you are using the lints_core and run flutter analyze lib/dive_audio_meter.dart

INFO: Statements in an if should be enclosed in a block.

lib/dive_audio_meter.dart:285:7

    ╷
285 │       fillRect(canvas, foregroundColor, x, peakHoldPosition + miniBox, width, miniBox);
    │       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    ╵

To reproduce make sure you are using the lints_core and run flutter analyze lib/dive_audio_meter.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
bloc ^8.1.1 8.1.4 8.1.4
built_collection ^5.1.1 5.1.1 5.1.1
dive ^0.7.0 0.7.0 0.7.0
equatable ^2.0.5 2.0.7 2.0.7
file_selector ^0.9.2+4 0.9.5 1.0.3
file_selector_macos ^0.9.0+6 0.9.4+2 0.9.4+2
flutter flutter 0.0.0 0.0.0
flutter_bloc ^8.1.2 8.1.6 8.1.6
flutter_riverpod ^2.3.1 2.6.1 2.6.1
intl ^0.17.0 0.17.0 0.20.1
path ^1.8.2 1.9.1 1.9.1
path_provider ^2.0.13 2.1.5 2.1.5
Transitive dependencies
Package Constraint Compatible Latest
async - 2.12.0 2.12.0
characters - 1.3.0 1.4.0
clock - 1.1.2 1.1.2
collection - 1.19.0 1.19.1
cross_file - 0.3.4+2 0.3.4+2
crypto - 3.0.6 3.0.6
dive_obslib - 0.5.0 0.5.0
ffi - 2.1.3 2.1.3
file_selector_android - 0.5.1+12 0.5.1+12
file_selector_ios - 0.5.3+1 0.5.3+1
file_selector_linux - 0.9.3+2 0.9.3+2
file_selector_platform_interface - 2.6.2 2.6.2
file_selector_web - 0.9.4+2 0.9.4+2
file_selector_windows - 0.9.3+3 0.9.3+3
flutter_web_plugins - 0.0.0 0.0.0
http - 1.2.2 1.2.2
http_parser - 4.1.1 4.1.1
material_color_utilities - 0.11.1 0.12.0
meta - 1.15.0 1.16.0
nested - 1.0.0 1.0.0
path_provider_android - 2.2.15 2.2.15
path_provider_foundation - 2.4.1 2.4.1
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
platform - 3.1.6 3.1.6
plugin_platform_interface - 2.1.8 2.1.8
provider - 6.1.2 6.1.2
riverpod - 2.6.1 2.6.1
sky_engine - 0.0.0 0.0.0
source_span - 1.10.1 1.10.1
stack_trace - 1.12.1 1.12.1
state_notifier - 1.0.0 1.0.0
string_scanner - 1.4.1 1.4.1
term_glyph - 1.2.2 1.2.2
typed_data - 1.4.0 1.4.0
uuid - 3.0.7 4.5.1
vector_math - 2.1.4 2.1.4
web - 1.1.0 1.1.0
xdg_directories - 1.1.0 1.1.0

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

The constraint `^0.9.2+4` on file_selector does not support the stable version `1.0.0`.

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

The constraint `^0.17.0` on intl does not support the stable version `0.18.0`.

Try running dart pub upgrade --major-versions intl 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.17, Flutter 3.27.0, Dart 3.6.0.

Check the analysis log for details.