buoy_storage 0.3.2 copy "buoy_storage: ^0.3.2" to clipboard
buoy_storage: ^0.3.2 copied to clipboard

Inspect configured Flutter storage backends, including shared_preferences and optional registered adapters, in a debug-build panel.

130/ 160
pub points
387
downloads

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

Failed report section
Follow Dart file conventions
20 / 30trigger folding of the section

Passed check 10/10 points: Provide a valid pubspec.yaml

Passed check 5/5 points: Provide a valid README.md

Passed check 5/5 points: Provide a valid CHANGELOG.md

Failed check 0/10 points: Use an OSI-approved license

No license was recognized.

Consider using an OSI-approved license in the LICENSE file to make it more accessible to the community.

Partially passed report section
Provide documentation
10 / 20trigger folding of the section

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

2 out of 143 API elements (1.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: buoy_storage, buoy_storage.Buoy, buoy_storage.Buoy.adapters, buoy_storage.Buoy.addRegistryListener, buoy_storage.Buoy.init.

Passed check 10/10 points: Package has an example

Passed report section
Platform support
20 / 20trigger folding of the section

Passed check 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 not compatible with platform Web

Because:

  • package:buoy_storage/buoy_storage.dart that imports:
  • package:buoy_storage/src/storage_tool/storage_modal.dart that imports:
  • package:buoy_storage/src/storage_tool/storage_models.dart that imports:
  • package:buoy_storage/src/storage_tool/storage_value_type.dart that imports:
  • package:buoy_shared_ui/buoy_shared_ui.dart that imports:
  • package:buoy_shared_ui/src/widgets/status_badge.dart that imports:
  • package:buoy_shared_ui/src/generated/badge_styles.g.dart that imports:
  • package:buoy_core/buoy_core.dart that imports:
  • package:buoy_core/src/interaction/semantics_screen_host.dart that imports:
  • package:buoy_core/src/interaction/screen_actions.dart that imports:
  • package:buoy_core/src/sync_client.dart that imports:
  • package:buoy_core/src/license/license_manager.dart that imports:
  • package:buoy_core/src/license/keygen.dart that imports:
  • dart:io
Partially passed report section
Pass static analysis
40 / 50trigger folding of the section

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

Found 36 issues. Showing the first 2:

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

lib/src/required_storage_keys.dart:5:347

  ╷
5 │   d in c.value){if(a.any((e)=>e.key==b.key&&e.storageType==c.key&&(c.key== 'secure' ||e.instanceId==d),)){continue;}a.add(StorageKeyInfo(key:b.key,value:null,storageType:c.key,instanceId:d,status: 'required_missing',),);}}}return a.map((f){RequiredStorageKey?g;for(final h in _a){if(h.key==f.key&&h.appliesTo(f.storageType)){g=h;break;}}if(g==null)return
  │ ┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────^
6 │ │ f;var i= 'required_present';if(f.status== 'required_missing' ||(f.storageType== 'async' &&f.value==null)){i= 'required_missing';}else if(f.value!= '•••••• (biometric protected)'){final j=f.storageType== 'async' ?f.value==g.expectedValue:_b(f.value)==g.expectedValue;if(g.expectedValue!=null&& !j){
[...]

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

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

lib/src/storage_sync_adapter.dart:3:25

  ╷
3 │ is Map<String,Object? >)return a;if(a is Map)return a.cast<String,Object? >();return null;}String?_b(Object?a)=>_a(a)?['key']as String?;void _c(String a){final b=buoyMmkvBackend?.snapshot()??const[];for(final c in b){if(c['id']==a&&c['readOnly']==true){throw StateError('MMKV instance "$a" is registered read-only');}}}StorageEvent?_d(Iterable<StorageEvent>a,String
  │                         ^^^^^^^^^
  ╵

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

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

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

Package Constraint Compatible Latest Notes
buoy_core ^0.3.3 0.3.8 0.3.8
buoy_shared_ui ^0.3.3 0.3.3 0.3.3
shared_preferences ^2.5.5 2.5.6 2.5.6
Transitive dependencies
Package Constraint Compatible Latest Notes
characters - 1.4.1 1.4.1
collection - 1.19.1 1.19.1
crypto - 3.0.7 3.0.7
cryptography - 2.9.0 2.9.0
ffi - 2.2.0 2.2.0
file - 7.0.1 7.0.1
logging - 1.3.0 1.3.0
material_color_utilities - 0.13.0 0.13.1
meta - 1.19.0 1.19.0
path - 1.9.1 1.9.1
path_provider_linux - 2.2.2 2.2.2
path_provider_platform_interface - 2.1.3 2.1.3
path_provider_windows - 2.3.0 2.3.0
platform - 3.2.0 3.2.0
plugin_platform_interface - 2.1.8 2.1.8
qr - 3.0.2 4.0.0
shared_preferences_android - 2.4.28 2.4.28
shared_preferences_foundation - 2.5.7 2.5.7
shared_preferences_linux - 2.4.1 2.4.1
shared_preferences_platform_interface - 2.4.2 2.4.2
shared_preferences_web - 2.4.3 2.4.3
shared_preferences_windows - 2.4.1 2.4.1
socket_io_client - 3.1.6 3.1.6
socket_io_common - 3.1.1 3.1.1
typed_data - 1.4.0 1.4.0
vector_math - 2.4.3 2.4.3
web - 1.1.1 1.1.1
web_socket - 1.0.1 1.0.1
xdg_directories - 1.1.0 1.1.0

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

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

Passed check 20/20 points: Compatible with dependency constraint lower bounds

pub downgrade does not expose any static analysis error.

Analyzed with Pana 0.23.19, Flutter 3.47.7, Dart 3.13.5.

Check the analysis log for details.

Weekly downloads

Display as:
By versions:
0
likes
130
points
387
downloads

Documentation

API reference

Publisher

verified publisherbuoy.gg

Weekly Downloads

Inspect configured Flutter storage backends, including shared_preferences and optional registered adapters, in a debug-build panel.

Homepage

License

unknown (license)

Dependencies

buoy_core, buoy_shared_ui, flutter, shared_preferences

More

Packages that depend on buoy_storage