Skip to main content

nostr_mail 7.0.0 copy "nostr_mail: ^7.0.0" to clipboard
nostr_mail: ^7.0.0 copied to clipboard

A Dart SDK for sending and receiving emails over the Nostr protocol using NIP-59 gift-wrapped messages.

140/ 160
pub points
1.01k
downloads

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

Passed report section
Follow Dart file conventions
30 / 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

Passed check 10/10 points: Use an OSI-approved license

Detected license: MIT.

Passed report section
Provide documentation
20 / 20trigger folding of the section

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

251 out of 460 API elements (54.6 %) have documentation comments.

Some symbols that are missing documentation: nostr_mail.AttachmentRef.AttachmentRef.fromJson, nostr_mail.AttachmentRef.AttachmentRef.new, nostr_mail.AttachmentRef.toJson, nostr_mail.BridgeResolutionException, nostr_mail.BridgeResolutionException.BridgeResolutionException.new.

Passed check 10/10 points: Package has an example

Partially passed report section
Platform support
10 / 20trigger folding of the section

Partially passed check 10/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 not compatible with platform Web

Because:

  • package:nostr_mail/nostr_mail.dart that imports:
  • package:nostr_mail/src/utils/event_email_parser.dart that imports:
  • package:nostr_mail/src/utils/attachment_extractor.dart that imports:
  • package:enough_mail_plus/enough_mail.dart that imports:
  • package:enough_mail_plus/smtp.dart that imports:
  • package:enough_mail_plus/src/smtp/smtp_exception.dart that imports:
  • package:enough_mail_plus/src/smtp/smtp_client.dart that imports:
  • package:enough_mail_plus/src/private/util/client_base.dart that imports:
  • dart:io

WASM compatibility:

Package not compatible with runtime wasm

Because:

  • package:nostr_mail/nostr_mail.dart that imports:
  • package:nostr_mail/src/utils/event_email_parser.dart that imports:
  • package:nostr_mail/src/utils/attachment_extractor.dart that imports:
  • package:enough_mail_plus/enough_mail.dart that imports:
  • package:enough_mail_plus/smtp.dart that imports:
  • package:enough_mail_plus/src/smtp/smtp_exception.dart that imports:
  • package:enough_mail_plus/src/smtp/smtp_client.dart that imports:
  • package:enough_mail_plus/src/private/util/client_base.dart that imports:
  • dart:io

Note: This package supports Web but is not WASM-compatible, resulting in a partial score. See https://dart.dev/web/wasm for details.

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

INFO: '$_getPrefetchedData' is deprecated and shouldn't be used. No longer used, re-run build runner.

lib/src/storage/database.g.dart:7435:31

     ╷
7435 │                         await $_getPrefetchedData<
     │                               ^^^^^^^^^^^^^^^^^^^
     ╵

To reproduce make sure you are using the lints_core and run dart analyze lib/src/storage/database.g.dart

INFO: '$_getPrefetchedData' is deprecated and shouldn't be used. No longer used, re-run build runner.

lib/src/storage/database.g.dart:7452:31

     ╷
7452 │                         await $_getPrefetchedData<EmailRow, Emails, MatchRow>(
     │                               ^^^^^^^^^^^^^^^^^^^
     ╵

To reproduce make sure you are using the lints_core and run dart analyze lib/src/storage/database.g.dart

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

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

Package Constraint Compatible Latest Notes
blossom_cache ^0.5.0 0.5.1 0.5.1
blossom_upload_queue_shim_for_ndk ^0.11.0 0.11.1 0.12.0
broadcast_queue_shim_for_ndk ^0.8.0 0.8.2 0.8.2
cryptography ^2.9.0 2.9.0 2.9.0
drift ^2.34.4 2.35.3 2.35.3
enough_mail_plus ^2.2.4 2.3.0 2.3.0
html ^0.15.6 0.15.7 0.15.7
http ^1.6.0 1.6.0 1.6.0
ndk >=0.10.0-dev.7 <0.12.0 0.10.1 0.10.1
nostr_event_scheduler ^0.7.0 0.7.1 0.7.1
rxdart ^0.28.0 0.28.0 0.28.0
sembast ^3.8.6 3.9.0 3.9.0
sync_engine_shim_for_ndk ^0.9.0 0.9.1 0.9.1
Transitive dependencies
Package Constraint Compatible Latest Notes
archive - 4.6.0 4.6.0
args - 2.7.0 2.7.0
asn1lib - 1.6.8 1.6.8
async - 2.13.1 2.13.1
basic_utils - 5.8.2 5.8.2
bech32 - 0.2.2 0.2.2
bip32_keys - 3.1.4 3.1.4
bip340 - 0.3.1 0.3.1
bip39_mnemonic - 4.1.0 4.1.0
bs58check - 1.0.2 1.0.2
cbor - 6.5.1 6.5.1
characters - 1.4.1 1.4.1
clock - 1.1.3 1.1.3
code_assets - 2.1.0 2.1.0
collection - 1.19.1 1.19.1
convert - 3.1.2 3.1.2
crypto - 3.0.8 3.0.8
csslib - 1.0.2 1.0.2
elliptic - 0.3.12 0.4.0
encrypter_plus - 5.1.0 5.1.0
enough_convert - 1.7.1 1.7.1
equatable - 2.1.0 3.0.0
ffi - 2.2.0 2.2.0
file - 7.0.1 7.0.1
glob - 2.2.0 2.2.0
hex - 0.2.0 0.2.0
hooks - 2.2.0 2.2.0
http_parser - 4.1.2 4.1.2
idb_shim - 2.11.1 2.11.1
intl - 0.20.3 0.20.3
json_annotation - 4.12.0 4.12.0
logging - 1.3.0 1.3.0
meta - 1.19.0 1.19.0
native_toolchain_c - 0.19.5 0.19.5
native_toolchain_rust - 1.0.7 1.0.7
path - 1.9.1 1.9.1
petitparser - 7.1.0 7.1.0
platform - 3.2.0 3.2.0
pointycastle - 4.0.0 4.0.0
posix - 6.5.4 6.5.4
process - 5.0.6 5.0.6
pub_semver - 2.2.1 2.2.1
record_use - 1.1.1 1.1.1
sembast_web - 2.4.6+1 2.4.6+1
source_span - 1.10.2 1.10.2
sqlite3 - 3.8.0 3.8.0
stack_trace - 1.12.2 1.12.2
stream_channel - 2.1.4 2.1.4
string_scanner - 1.4.1 1.4.1
synchronized - 3.5.0 3.5.0
term_glyph - 1.2.2 1.2.2
toml - 0.18.0 0.18.0
typed_data - 1.4.0 1.4.0
unorm_dart - 0.3.3 0.3.3
url_set_for_ndk - 0.2.1 0.2.1
web - 1.1.2 1.1.2
web_socket - 1.0.1 1.0.1
web_socket_channel - 3.0.3 3.0.3
xml - 7.1.0 7.1.0
xxh3 - 1.2.0 1.2.0
yaml - 3.1.4 3.1.4

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

The constraint `^0.11.0` on blossom_upload_queue_shim_for_ndk does not support the stable version `0.12.0`, that was published 1 days ago.

When blossom_upload_queue_shim_for_ndk is 30 days old, this package will no longer be awarded points in this category.

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

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

Check the analysis log for details.

Weekly downloads

Display as:
By versions:
2
likes
140
points
1.01k
downloads

Documentation

API reference

Publisher

unverified uploader

Weekly Downloads

A Dart SDK for sending and receiving emails over the Nostr protocol using NIP-59 gift-wrapped messages.

Repository (GitHub)
View/report issues

Topics

#nostr #email #encryption #messaging #decentralized

License

MIT (license)

Dependencies

blossom_cache, blossom_upload_queue_shim_for_ndk, broadcast_queue_shim_for_ndk, cryptography, drift, enough_mail_plus, html, http, ndk, nostr_event_scheduler, rxdart, sembast, sync_engine_shim_for_ndk

More

Packages that depend on nostr_mail