codelessly_api 4.4.0 copy "codelessly_api: ^4.4.0" to clipboard
codelessly_api: ^4.4.0 copied to clipboard

Flutter's layouts and widgets represented as models and JSON data. This API is used by the Codelessly Editor and CloudUI SDK to render Flutter Widgets.

3
likes
140/ 160
pub points
408
downloads

We analyzed this package 10 days ago, and awarded it 140 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: BSD-3-Clause.

OK
Provide documentation
20 / 20trigger folding of the section

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

3243 out of 3256 API elements (99.6 %) have documentation comments.

Some symbols that are missing documentation: codelessly_api, codelessly_api.Base64JsonConverter.fromJson, codelessly_api.Base64JsonConverter.toJson, codelessly_api.CanvasesMapConverter.fromJson, codelessly_api.CanvasesMapConverter.toJson.

10/10 points: Package has an example

OK
Platform support
20 / 20trigger folding of the section

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

  • ✓ Android

  • ✓ iOS

  • ✓ Windows

  • ✓ Linux

  • ✓ macOS

  • ✓ Web

0/0 points: WASM compatibility

This package is compatible with runtime wasm, and will be rewarded additional 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 116 issues. Showing the first 2:

WARNING: This class (or a class that this class inherits from) is marked as '@immutable', but one or more of its instance fields aren't final: BlendMixin.opacity, BlendMixin.blendMode, BlendMixin.isMask, BlendMixin.effects, BlendMixin.inkWell, GeometryMixin.fills, GeometryMixin.strokes, GeometryMixin.strokeWeight, GeometryMixin.strokeMiterLimit, GeometryMixin.strokeAlign, GeometryMixin.strokeCap, GeometryMixin.dashPattern, GeometryMixin.strokeSide, ReactionMixin.reactions, BaseNode.id, BaseNode.name, BaseNode.visible, BaseNode._constraints, BaseNode._resolvedConstraints, BaseNode.edgePins, BaseNode.positioningMode, BaseNode.horizontalFit, BaseNode.verticalFit, BaseNode.flex, BaseNode.aspectRatioLock, BaseNode.parentID, BaseNode._alignment, BaseNode._outerBoxLocal, BaseNode._basicBoxLocal, BaseNode._retainedOuterBoxLocal, BaseNode._innerBoxLocal, BaseNode._outerBoxGlobal, BaseNode._basicBoxGlobal, BaseNode._innerBoxGlobal, BaseNode._middleRotatedBoxLocal, BaseNode._middleRotatedBoxGlobal, BaseNode._outerRotatedBoxLocal, BaseNode._outerRotatedBoxGlobal, BaseNode._rotatedTopLeftCorner, BaseNode._margin, BaseNode._padding, BaseNode._rotationDegrees, BaseNode._rotationRadians, BaseNode.globalRotationDegrees, BaseNode.globalRotationRadians, BaseNode.widthFactor, BaseNode.heightFactor, BaseNode.enabled, VariablePropertiesMixin.variables, VariablePropertiesMixin.multipleVariables

lib/src/api/mixins.dart:32:16

   ╷
32 │ abstract class DefaultShapeNode extends SceneNode
   │                ^^^^^^^^^^^^^^^^
   ╵

To reproduce make sure you are using the lints_core and run dart analyze lib/src/api/mixins.dart

WARNING: This class (or a class that this class inherits from) is marked as '@immutable', but one or more of its instance fields aren't final: ClipMixin.clipsContent, ChildrenMixin.children, BlendMixin.opacity, BlendMixin.blendMode, BlendMixin.isMask, BlendMixin.effects, BlendMixin.inkWell, GeometryMixin.fills, GeometryMixin.strokes, GeometryMixin.strokeWeight, GeometryMixin.strokeMiterLimit, GeometryMixin.strokeAlign, GeometryMixin.strokeCap, GeometryMixin.dashPattern, GeometryMixin.strokeSide, ReactionMixin.reactions, BaseNode.id, BaseNode.name, BaseNode.visible, BaseNode._constraints, BaseNode._resolvedConstraints, BaseNode.edgePins, BaseNode.positioningMode, BaseNode.horizontalFit, BaseNode.verticalFit, BaseNode.flex, BaseNode.aspectRatioLock, BaseNode.parentID, BaseNode._alignment, BaseNode._outerBoxLocal, BaseNode._basicBoxLocal, BaseNode._retainedOuterBoxLocal, BaseNode._innerBoxLocal, BaseNode._outerBoxGlobal, BaseNode._basicBoxGlobal, BaseNode._innerBoxGlobal, BaseNode._middleRotatedBoxLocal, BaseNode._middleRotatedBoxGlobal, BaseNode._outerRotatedBoxLocal, BaseNode._outerRotatedBoxGlobal, BaseNode._rotatedTopLeftCorner, BaseNode._margin, BaseNode._padding, BaseNode._rotationDegrees, BaseNode._rotationRadians, BaseNode.globalRotationDegrees, BaseNode.globalRotationRadians, BaseNode.widthFactor, BaseNode.heightFactor, BaseNode.enabled, VariablePropertiesMixin.variables, VariablePropertiesMixin.multipleVariables

lib/src/api/mixins.dart:99:16

   ╷
99 │ abstract class ParentNode extends DefaultShapeNode
   │                ^^^^^^^^^^
   ╵

To reproduce make sure you are using the lints_core and run dart analyze lib/src/api/mixins.dart

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

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

Package Constraint Compatible Latest
codelessly_json_annotation 4.9.0+2 4.9.0+2 4.9.0+2
collection >=1.17.0 <2.0.0 1.19.1 1.19.1
equatable >=2.0.5 <3.0.0 2.0.7 2.0.7
intl >=0.17.0 <1.0.0 0.20.1 0.20.1
meta >=1.9.0 <2.0.0 1.16.0 1.16.0
vector_math >=2.1.4 <3.0.0 2.1.4 2.1.4
Transitive dependencies
Package Constraint Compatible Latest
async - 2.12.0 2.12.0
clock - 1.1.2 1.1.2
http - 1.2.2 1.2.2
http_parser - 4.1.1 4.1.1
path - 1.9.1 1.9.1
source_span - 1.10.1 1.10.1
string_scanner - 1.4.1 1.4.1
term_glyph - 1.2.2 1.2.2
typed_data - 1.4.0 1.4.0
web - 1.1.0 1.1.0

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

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, Dart 3.6.0.

Check the analysis log for details.

3
likes
140
points
408
downloads

Publisher

verified publishercodelessly.com

Weekly Downloads

Flutter's layouts and widgets represented as models and JSON data. This API is used by the Codelessly Editor and CloudUI SDK to render Flutter Widgets.

Homepage
Repository (GitHub)
View/report issues

Documentation

API reference

License

BSD-3-Clause (license)

Dependencies

codelessly_json_annotation, collection, equatable, intl, meta, vector_math

More

Packages that depend on codelessly_api