three_dart 0.0.16 copy "three_dart: ^0.0.16" to clipboard
three_dart: ^0.0.16 copied to clipboard

three.js implement by Dart. Dart 3D library. an easy to use, lightweight, cross-platform, general purpose 3D library.

188
likes
120/ 160
pub points
87%
popularity

We analyzed this package 8 days 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: MIT.

partial
Provide documentation
10 / 20trigger folding of the section

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

59 out of 4535 API elements (1.3 %) 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: alphamap_fragment.glsl, alphamap_pars_fragment.glsl, alphatest_fragment.glsl, alphatest_pars_fragment.glsl, ambient_light.

10/10 points: Package has an example

failed
Platform support
20 / 20trigger folding of the section

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

  • ✓ Android

  • ✓ iOS

  • ✓ Windows

  • ✓ macOS

These platforms are not supported:

Package does not support platform `Linux`.

Because:

  • package:three_dart/three_dart.dart that imports:
  • package:three_dart/three3d/three.dart that imports:
  • package:three_dart/three3d/three_helper.dart that imports:
  • package:three_dart/three3d/math/index.dart that imports:
  • package:three_dart/three3d/math/interpolants/quaternion_linear_interpolant.dart that imports:
  • package:three_dart/three3d/math/quaternion.dart that imports:
  • package:three_dart/three3d/math/vector3.dart that imports:
  • package:three_dart/three3d/math/matrix4.dart that imports:
  • package:three_dart/three3d/math/matrix3.dart that imports:
  • package:flutter_gl/flutter_gl.dart that declares support for platforms: Android, iOS, Windows, macOS, Web.
Package not compatible with platform Web

Because:

  • package:three_dart/three_dart.dart that imports:
  • package:three_dart/three3d/three.dart that imports:
  • package:three_dart/three3d/three_helper.dart that imports:
  • package:three_dart/three3d/math/index.dart that imports:
  • package:three_dart/three3d/math/interpolants/quaternion_linear_interpolant.dart that imports:
  • package:three_dart/three3d/math/quaternion.dart that imports:
  • package:three_dart/three3d/core/index.dart that imports:
  • package:three_dart/three3d/core/raycaster.dart that imports:
  • package:three_dart/three3d/core/object_3d.dart that imports:
  • package:three_dart/three3d/textures/texture.dart that imports:
  • package:three_dart/three3d/textures/source.dart that imports:
  • package:three_dart/three3d/extras/index.dart that imports:
  • package:three_dart/three3d/extras/pmrem_generator.dart that imports:
  • package:three_dart/three3d/renderers/index.dart that imports:
  • package:three_dart/three3d/renderers/web_gl_renderer.dart that imports:
  • package:three_dart/three3d/renderers/webgl/index.dart that imports:
  • package:three_dart/three3d/renderers/webgl/web_gl_program.dart that imports:
  • dart:io

0/0 points: WASM compatibility

Package not compatible with runtime wasm

Because:

  • package:three_dart/three_dart.dart that imports:
  • package:three_dart/three3d/three.dart that imports:
  • package:three_dart/three3d/three_helper.dart that imports:
  • package:three_dart/three3d/math/index.dart that imports:
  • package:three_dart/three3d/math/interpolants/quaternion_linear_interpolant.dart that imports:
  • package:three_dart/three3d/math/quaternion.dart that imports:
  • package:three_dart/three3d/math/vector3.dart that imports:
  • package:three_dart/three3d/math/matrix4.dart that imports:
  • package:three_dart/three3d/math/matrix3.dart that imports:
  • package:flutter_gl/flutter_gl.dart that imports:
  • package:flutter_gl/native-array/index.dart that imports:
  • package:flutter_gl/native-array/NativeArray.app.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.

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

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

Found 310 issues. Showing the first 2:

WARNING: A double can't equal 'double.nan', so the condition is always 'false'.

lib/three3d/dart_helpers.dart:22:93

   ╷
22 │ bool falsey(value) => value == null || value == false || value == '' || value == 0 || value == double.nan;
   │                                                                                             ^^^^^^^^^^^^^
   ╵

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

INFO: Dangling library doc comment.

lib/extra/blob.dart:1:1

  ╷
1 │ /// Fake Blob for fit web code when in App & Desktop
  │ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  ╵

To reproduce make sure you are using the lints_core and run flutter analyze lib/extra/blob.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
crypto ^3.0.1 3.0.5 3.0.5
ffi ^2.0.1 2.1.3 2.1.3
flutter flutter 0.0.0 0.0.0
flutter_gl ^0.0.20 0.0.21 0.0.21
http ^0.13.4 0.13.6 1.2.2
image ^3.1.1 3.3.0 4.2.0
universal_html ^2.0.8 2.2.4 2.2.4
Transitive dependencies
Package Constraint Compatible Latest
archive - 3.6.1 3.6.1
async - 2.11.0 2.11.0
characters - 1.3.0 1.3.0
charcode - 1.3.1 1.3.1
collection - 1.18.0 1.19.0
csslib - 1.0.0 1.0.0
flutter_gl_macos - 0.0.5 0.0.5
flutter_gl_platform_interface - 0.0.4 0.0.4
flutter_gl_web - 0.0.5 0.0.5
flutter_gl_windows - 0.0.4 0.0.4
flutter_web_plugins - 0.0.0 0.0.0
html - 0.15.4 0.15.4
http_parser - 4.0.2 4.1.0
material_color_utilities - 0.11.1 0.12.0
meta - 1.15.0 1.16.0
path - 1.9.0 1.9.0
petitparser - 6.0.2 6.0.2
plugin_platform_interface - 2.1.8 2.1.8
sky_engine - 0.0.99 0.0.99
source_span - 1.10.0 1.10.0
string_scanner - 1.3.0 1.3.0
term_glyph - 1.2.1 1.2.1
typed_data - 1.3.2 1.3.2
universal_io - 2.2.2 2.2.2
vector_math - 2.1.4 2.1.4
xml - 6.5.0 6.5.0

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

The constraint `^0.13.4` on http does not support the stable version `1.0.0`.

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

The constraint `^3.1.1` on image does not support the stable version `4.0.0`.

Try running dart pub upgrade --major-versions image 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.12, Flutter 3.24.3, Dart 3.5.3.

Check the analysis log for details.

188
likes
120
pub points
87%
popularity

Publisher

unverified uploader

three.js implement by Dart. Dart 3D library. an easy to use, lightweight, cross-platform, general purpose 3D library.

Repository (GitHub)
View/report issues

Documentation

API reference

License

MIT (license)

Dependencies

crypto, ffi, flutter, flutter_gl, http, image, universal_html

More

Packages that depend on three_dart