at_contacts_flutter 3.1.2 copy "at_contacts_flutter: ^3.1.2" to clipboard
at_contacts_flutter: ^3.1.2 copied to clipboard

A Flutter plugin project to provide ease of managing contacts for an @‎sign using @p‎latform.

302
likes
130/ 160
pub points
70%
popularity

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

partial
Follow Dart file conventions
30 / 30trigger folding of the section

10/10 points: Provide a valid pubspec.yaml

Repository URL doesn't exist.

At the time of the analysis https://github.com/atsign-foundation/at_widgets/tree/trunk/at_contacts_flutter was unreachable. Make sure that the website is reachable via HEAD requests.

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

77 out of 241 API elements (32.0 %) have documentation comments.

Some symbols that are missing documentation: add_singular_contact_dialog, add_singular_contact_dialog.AddSingleContact.atSignName, at_contacts_flutter, blocked_screen, blocked_user_card.BlockedUserCard.

10/10 points: Package has an example

failed
Platform support
20 / 20trigger folding of the section

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 does not support platform `Web`.

Because:

  • package:at_contacts_flutter/at_contacts_flutter.dart that declares support for platforms: Android, iOS, Windows, Linux, macOS.

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

Package does not support platform `Android`.

Because:

  • package:at_contacts_flutter/at_contacts_flutter.dart that imports:
  • package:at_contacts_flutter/desktop_screens/desktop_contacts_screen.dart that imports:
  • package:at_contacts_flutter/widgets/add_contacts_dialog.dart that imports:
  • package:at_contacts_flutter/services/contact_service.dart that imports:
  • package:at_client_mobile/at_client_mobile.dart that imports:
  • package:at_client_mobile/src/keychain_manager.dart that imports:
  • package:package_info_plus/package_info_plus.dart that imports:
  • package:package_info_plus/src/package_info_plus_windows.dart that imports:
  • package:package_info_plus/src/file_version_info.dart that imports:
  • package:win32/win32.dart that declares support for platforms: Windows.
Package does not support platform `iOS`.

Because:

  • package:at_contacts_flutter/at_contacts_flutter.dart that imports:
  • package:at_contacts_flutter/desktop_screens/desktop_contacts_screen.dart that imports:
  • package:at_contacts_flutter/widgets/add_contacts_dialog.dart that imports:
  • package:at_contacts_flutter/services/contact_service.dart that imports:
  • package:at_client_mobile/at_client_mobile.dart that imports:
  • package:at_client_mobile/src/keychain_manager.dart that imports:
  • package:package_info_plus/package_info_plus.dart that imports:
  • package:package_info_plus/src/package_info_plus_windows.dart that imports:
  • package:package_info_plus/src/file_version_info.dart that imports:
  • package:win32/win32.dart that declares support for platforms: Windows.
Package does not support platform `Windows`.

Because:

  • package:at_contacts_flutter/at_contacts_flutter.dart that imports:
  • package:at_contacts_flutter/desktop_screens/desktop_contacts_screen.dart that imports:
  • package:at_contacts_flutter/widgets/add_contacts_dialog.dart that imports:
  • package:at_contacts_flutter/services/contact_service.dart that imports:
  • package:at_client_mobile/at_client_mobile.dart that imports:
  • package:at_client_mobile/src/keychain_manager.dart that imports:
  • package:flutter_keychain/flutter_keychain.dart that declares support for platforms: Android, iOS.
Package does not support platform `Linux`.

Because:

  • package:at_contacts_flutter/at_contacts_flutter.dart that imports:
  • package:at_contacts_flutter/desktop_screens/desktop_contacts_screen.dart that imports:
  • package:at_contacts_flutter/widgets/add_contacts_dialog.dart that imports:
  • package:at_contacts_flutter/services/contact_service.dart that imports:
  • package:at_client_mobile/at_client_mobile.dart that imports:
  • package:at_client_mobile/src/keychain_manager.dart that imports:
  • package:package_info_plus/package_info_plus.dart that imports:
  • package:package_info_plus/src/package_info_plus_windows.dart that imports:
  • package:package_info_plus/src/file_version_info.dart that imports:
  • package:win32/win32.dart that declares support for platforms: Windows.
Package does not support platform `macOS`.

Because:

  • package:at_contacts_flutter/at_contacts_flutter.dart that imports:
  • package:at_contacts_flutter/desktop_screens/desktop_contacts_screen.dart that imports:
  • package:at_contacts_flutter/widgets/add_contacts_dialog.dart that imports:
  • package:at_contacts_flutter/services/contact_service.dart that imports:
  • package:at_client_mobile/at_client_mobile.dart that imports:
  • package:at_client_mobile/src/keychain_manager.dart that imports:
  • package:package_info_plus/package_info_plus.dart that imports:
  • package:package_info_plus/src/package_info_plus_windows.dart that imports:
  • package:package_info_plus/src/file_version_info.dart that imports:
  • package:win32/win32.dart that declares support for platforms: Windows.

0/0 points: WASM compatibility

Package not compatible with runtime wasm

Because:

  • package:at_contacts_flutter/at_contacts_flutter.dart that imports:
  • package:at_contacts_flutter/desktop_screens/desktop_contacts_screen.dart that imports:
  • package:at_common_flutter/services/size_config.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.

0/0 points: Swift Package Manager support

Package does not support the Swift Package Manager on macOS

It does not contain macos/at_contacts_flutter/Package.swift.

This package for iOS or macOS does not support the Swift Package Manager. It will not receive full points in a future version of the scoring model.

See https://docs.flutter.dev/to/spm 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 32 issues. Showing the first 2:

WARNING: The '!' will have no effect because the receiver can't be null.

lib/desktop_screens/desktop_contacts_screen.dart:38:28

   ╷
38 │     WidgetsBinding.instance!.addPostFrameCallback((timeStamp) async {
   │                            ^
   ╵

To reproduce make sure you are using the lints_core and run flutter analyze lib/desktop_screens/desktop_contacts_screen.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: ContactListTile.baseContact, ContactListTile.isBlockedScreen, ContactListTile.key

lib/desktop_screens/desktop_contacts_screen.dart:318:7

    ╷
318 │ class ContactListTile extends StatefulWidget {
    │       ^^^^^^^^^^^^^^^
    ╵

To reproduce make sure you are using the lints_core and run flutter analyze lib/desktop_screens/desktop_contacts_screen.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
at_client ^3.0.7 3.0.72 3.3.0
at_client_mobile ^3.1.3 3.2.13 3.2.19
at_common_flutter ^2.0.4 2.0.14 2.0.14
at_commons ^3.0.2 3.0.58 5.0.1
at_contact ^3.0.3 3.0.7 3.0.9
at_lookup ^3.0.5 3.0.43 3.0.49
flutter flutter 0.0.0 0.0.0
flutter_slidable ^0.6.0 0.6.0 3.1.1
Transitive dependencies
Package Constraint Compatible Latest
archive - 3.6.1 3.6.1
args - 2.6.0 2.6.0
asn1lib - 1.5.0 1.5.8
async - 2.12.0 2.12.0
at_base2e15 - 1.0.0 1.0.0
at_chops - 1.0.6 2.1.0
at_persistence_secondary_server - 3.0.59 3.0.65
at_persistence_spec - 2.0.14 2.0.14
at_utf7 - 1.0.0 1.0.0
at_utils - 3.0.15 3.0.19
biometric_storage - 5.0.1 5.0.1
characters - 1.3.0 1.3.1
clock - 1.1.2 1.1.2
collection - 1.18.0 1.19.1
convert - 3.1.2 3.1.2
cron - 0.5.1 0.6.1
crypto - 3.0.6 3.0.6
crypton - 2.2.0 2.2.1
dart_periphery - 0.9.8 0.9.8
ecdsa - 0.0.4 0.1.2
elliptic - 0.3.11 0.3.11
encrypt - 5.0.3 5.0.3
ffi - 2.1.3 2.1.3
file - 7.0.1 7.0.1
flutter_keychain - 2.5.0 2.5.0
flutter_web_plugins - 0.0.0 0.0.0
hive - 2.2.3 2.2.3
http - 1.2.2 1.2.2
http_parser - 4.0.2 4.1.1
internet_connection_checker - 1.0.0+1 1.0.0+1
intl - 0.17.0 0.20.0
js - 0.7.1 0.7.1
json_annotation - 4.9.0 4.9.0
logging - 1.3.0 1.3.0
material_color_utilities - 0.11.1 0.12.0
meta - 1.15.0 1.16.0
mutex - 3.1.0 3.1.0
ninja_asn1 - 2.0.0 2.0.0
package_info_plus - 4.2.0 8.1.1
package_info_plus_platform_interface - 2.0.1 3.0.1
path - 1.9.1 1.9.1
platform - 3.1.6 3.1.6
plugin_platform_interface - 2.1.8 2.1.8
pointycastle - 3.9.1 3.9.1
process - 5.0.3 5.0.3
sky_engine - 0.0.99 0.0.99
source_span - 1.10.0 1.10.0
stack_trace - 1.12.0 1.12.0
string_scanner - 1.4.0 1.4.0
term_glyph - 1.2.1 1.2.1
typed_data - 1.4.0 1.4.0
uuid - 3.0.7 4.5.1
vector_math - 2.1.4 2.1.4
version - 3.0.2 3.0.2
web - 1.1.0 1.1.0
win32 - 5.8.0 5.8.0
yaml - 3.1.2 3.1.2

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

The constraint `^3.0.2` on at_commons does not support the stable version `4.0.0`.

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

The constraint `^0.6.0` on flutter_slidable does not support the stable version `1.0.0`.

Try running dart pub upgrade --major-versions flutter_slidable 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.15, Flutter 3.24.4, Dart 3.5.4.

Check the analysis log for details.