ndk 0.1.3 copy "ndk: ^0.1.3" to clipboard
ndk: ^0.1.3 copied to clipboard

Nostr Development Kit - the most performant lib for all your nostr usecases

3
likes
150/ 160
pub points
68%
popularity

We analyzed this package 2 days ago, and awarded it 150 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.

OK
Provide documentation
20 / 20trigger folding of the section

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

305 out of 1045 API elements (29.2 %) have documentation comments.

Some symbols that are missing documentation: amber_event_signer, amber_event_signer.AmberEventSigner.amberFlutterDS, amber_event_signer.AmberEventSigner.canSign, amber_event_signer.AmberEventSigner.decrypt, amber_event_signer.AmberEventSigner.encrypt.

10/10 points: Package has an example

failed
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

These issues are present but do not affect the score, because they may not originate in your package:

Package does not support platform `iOS`.

Because:

  • package:ndk/ndk.dart that imports:
  • package:ndk/data_layer/data_sources/amber_flutter.dart that imports:
  • package:amberflutter/amberflutter.dart that declares support for platforms: Android.
Package does not support platform `Windows`.

Because:

  • package:ndk/ndk.dart that imports:
  • package:ndk/data_layer/data_sources/amber_flutter.dart that imports:
  • package:amberflutter/amberflutter.dart that declares support for platforms: Android.
Package does not support platform `Linux`.

Because:

  • package:ndk/ndk.dart that imports:
  • package:ndk/data_layer/data_sources/amber_flutter.dart that imports:
  • package:amberflutter/amberflutter.dart that declares support for platforms: Android.
Package does not support platform `macOS`.

Because:

  • package:ndk/ndk.dart that imports:
  • package:ndk/data_layer/data_sources/amber_flutter.dart that imports:
  • package:amberflutter/amberflutter.dart that declares support for platforms: Android.
Package does not support platform `Web`.

Because:

  • package:ndk/ndk.dart that imports:
  • package:ndk/data_layer/data_sources/amber_flutter.dart that imports:
  • package:amberflutter/amberflutter.dart that declares support for platforms: Android.

0/0 points: WASM compatibility

Package not compatible with runtime wasm

Because:

  • package:ndk/ndk.dart that imports:
  • package:ndk/domain_layer/usecases/relay_sets/relay_sets.dart that imports:
  • package:ndk/domain_layer/usecases/user_relay_lists/user_relay_lists.dart that imports:
  • package:ndk/domain_layer/usecases/requests/requests.dart that imports:
  • package:ndk/domain_layer/usecases/requests/concurrency_check.dart that imports:
  • package:ndk/domain_layer/entities/request_state.dart that imports:
  • package:ndk/domain_layer/usecases/relay_jit_manager/relay_jit.dart that imports:
  • package:ndk/domain_layer/usecases/jit_engine.dart that imports:
  • package:ndk/domain_layer/usecases/relay_jit_manager/relay_jit_request_strategies/relay_jit_pubkey_strategy.dart that imports:
  • package:ndk/domain_layer/usecases/inbox_outbox/get_nip_65_data.dart that imports:
  • package:ndk/domain_layer/repositories/cache_manager.dart that imports:
  • package:ndk/shared/nips/nip05/nip05.dart that imports:
  • package:ndk/shared/logger/logger.dart that imports:
  • package:logger/logger.dart that imports:
  • package:logger/src/outputs/advanced_file_output_stub.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.

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

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

Found 4 issues. Showing the first 2:

INFO: Assignment to a variable of type 'void'.

lib/domain_layer/usecases/relay_manager.dart:433:22

    ╷
433 │               .onError((error, stackTrace) {
    │ ┌──────────────────────^
434 │ │           print("error connecting to relay $url: $error");
435 │ │           return []; // Return an empty list in case of error
436 │ │         });
    │ └─────────^
    ╵

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

/tmp/pana_APJRAO/lib/domain_layer/usecases/follows/follows.dart doesn't match the Dart formatter.

To format your files run: dart format .

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
amberflutter ^0.0.9 0.0.9 0.0.9
bech32 ^0.2.2 0.2.2 0.2.2
bip340 ^0.3.0 0.3.0 0.3.0
collection ^1.18.0 1.18.0 1.19.1
convert ^3.1.1 3.1.2 3.1.2
crypto ^3.0.5 3.0.6 3.0.6
flutter flutter 0.0.0 0.0.0
flutter_rust_bridge ^2.6.0 2.6.0 2.6.0
hex ^0.2.0 0.2.0 0.2.0
http ^1.2.2 1.2.2 1.2.2
logger ^2.4.0 2.5.0 2.5.0
path_provider ^2.1.4 2.1.5 2.1.5
plugin_platform_interface ^2.1.7 2.1.8 2.1.8
pointycastle ^3.9.1 3.9.1 3.9.1
rust_lib_ndk ^0.1.3 0.1.3 0.1.3
rxdart ^0.28.0 0.28.0 0.28.0
web_socket_channel ^3.0.1 3.0.1 3.0.1
Transitive dependencies
Package Constraint Compatible Latest
args - 2.6.0 2.6.0
async - 2.12.0 2.12.0
build_cli_annotations - 2.1.0 2.1.0
characters - 1.3.0 1.3.1
ffi - 2.1.3 2.1.3
http_parser - 4.0.2 4.1.1
js - 0.7.1 0.7.1
material_color_utilities - 0.11.1 0.12.0
meta - 1.15.0 1.16.0
path - 1.9.1 1.9.1
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
platform - 3.1.6 3.1.6
sky_engine - 0.0.99 0.0.99
source_span - 1.10.0 1.10.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
typed_data - 1.4.0 1.4.0
vector_math - 2.1.4 2.1.4
web - 1.1.0 1.1.0
web_socket - 0.1.6 0.1.6
xdg_directories - 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.15, Flutter 3.24.5, Dart 3.5.4.

Check the analysis log for details.