survey_kit 0.2.1 copy "survey_kit: ^0.2.1" to clipboard
survey_kit: ^0.2.1 copied to clipboard

Create beautiful surveys with Flutter (inspired by iOS ResearchKit Surveys)

118
likes
120/ 160
pub points
88%
popularity

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

Issue tracker URL doesn't exist.

At the time of the analysis https://github.com/quickbirdstudios/survey_kit/issues 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: MIT.

partial
Provide documentation
10 / 20trigger folding of the section

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

89 out of 488 API elements (18.2 %) 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: survery_kit, survery_kit.AnswerFormat, survery_kit.AnswerFormat.AnswerFormat, survery_kit.AnswerFormat.AnswerFormat.fromJson, survery_kit.AnswerFormat.toJson.

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

Because:

  • package:survey_kit/survey_kit.dart that imports:
  • package:survey_kit/src/widget/survey_progress.dart that imports:
  • package:survey_kit/src/presenter/survey_state.dart that imports:
  • package:survey_kit/src/steps/step.dart that imports:
  • package:survey_kit/src/steps/predefined_steps/question_step.dart that imports:
  • package:survey_kit/src/views/time_answer_view.dart that imports:
  • package:survey_kit/src/views/widget/step_view.dart that imports:
  • package:survey_kit/src/controller/survey_controller.dart that imports:
  • package:survey_kit/src/presenter/survey_presenter.dart that imports:
  • package:survey_kit/src/navigator/task_navigator.dart that imports:
  • package:survey_kit/src/steps/predefined_steps/completion_step.dart that imports:
  • package:survey_kit/src/views/completion_view.dart that imports:
  • package:lottie/lottie.dart that imports:
  • package:lottie/src/providers/file_provider.dart that imports:
  • dart:io

0/0 points: WASM compatibility

Package not compatible with runtime wasm

Because:

  • package:survey_kit/survey_kit.dart that imports:
  • package:survey_kit/src/widget/survey_progress.dart that imports:
  • package:survey_kit/src/presenter/survey_state.dart that imports:
  • package:survey_kit/src/steps/step.dart that imports:
  • package:survey_kit/src/steps/predefined_steps/question_step.dart that imports:
  • package:survey_kit/src/views/time_answer_view.dart that imports:
  • package:survey_kit/src/views/widget/step_view.dart that imports:
  • package:survey_kit/src/controller/survey_controller.dart that imports:
  • package:survey_kit/src/presenter/survey_presenter.dart that imports:
  • package:survey_kit/src/navigator/task_navigator.dart that imports:
  • package:survey_kit/src/steps/predefined_steps/completion_step.dart that imports:
  • package:survey_kit/src/views/completion_view.dart that imports:
  • package:lottie/lottie.dart that imports:
  • package:lottie/src/providers/file_provider.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 17 issues. Showing the first 2:

INFO: Use 'whereType' to select elements of a given type.

lib/src/navigator/task_navigator.dart:49:19

   ╷
49 │       (task.steps.where((step) => step is CompletionStep).isEmpty ? 0 : 1);
   │                   ^^^^^
   ╵

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

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

lib/src/result/question/time_question_result.dart:75:9

   ╷
75 │         return '0$value';
   │         ^^^^^^^^^^^^^^^^^
   ╵

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

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

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

Package Constraint Compatible Latest
bloc ^8.0.3 8.1.4 8.1.4
camera ^0.11.0+1 0.11.0+2 0.11.0+2
collection ^1.15.0 1.18.0 1.19.1
cupertino_icons ^1.0.2 1.0.8 1.0.8
equatable ^2.0.3 2.0.7 2.0.7
flutter flutter 0.0.0 0.0.0
flutter_bloc ^8.0.1 8.1.6 8.1.6
flutter_markdown ^0.7.1 0.7.4+2 0.7.4+2
flutter_platform_widgets ^7.0.0 7.0.1 7.0.1
image_picker ^1.0.4 1.1.2 1.1.2
intl ^0.20.0 0.20.0 0.20.0
json_annotation ^4.0.1 4.9.0 4.9.0
lottie ^3.1.2 3.1.3 3.1.3
provider ^6.0.2 6.1.2 6.1.2
url_launcher ^6.1.5 6.3.1 6.3.1
uuid ^4.2.1 4.5.1 4.5.1
video_player ^2.1.6 2.9.2 2.9.2
Transitive dependencies
Package Constraint Compatible Latest
archive - 3.6.1 3.6.1
args - 2.6.0 2.6.0
async - 2.12.0 2.12.0
camera_android_camerax - 0.6.10 0.6.10
camera_avfoundation - 0.9.17+5 0.9.17+5
camera_platform_interface - 2.8.0 2.8.0
camera_web - 0.3.5 0.3.5
characters - 1.3.0 1.3.1
clock - 1.1.2 1.1.2
cross_file - 0.3.4+2 0.3.4+2
crypto - 3.0.6 3.0.6
csslib - 1.0.2 1.0.2
file_selector_linux - 0.9.3+1 0.9.3+1
file_selector_macos - 0.9.4+2 0.9.4+2
file_selector_platform_interface - 2.6.2 2.6.2
file_selector_windows - 0.9.3+3 0.9.3+3
fixnum - 1.1.1 1.1.1
flutter_plugin_android_lifecycle - 2.0.23 2.0.23
flutter_web_plugins - 0.0.0 0.0.0
html - 0.15.5 0.15.5
http - 1.2.2 1.2.2
http_parser - 4.0.2 4.1.1
image_picker_android - 0.8.12+17 0.8.12+17
image_picker_for_web - 3.0.6 3.0.6
image_picker_ios - 0.8.12+1 0.8.12+1
image_picker_linux - 0.2.1+1 0.2.1+1
image_picker_macos - 0.2.1+1 0.2.1+1
image_picker_platform_interface - 2.10.0 2.10.0
image_picker_windows - 0.2.1+1 0.2.1+1
markdown - 7.2.2 7.2.2
material_color_utilities - 0.11.1 0.12.0
meta - 1.15.0 1.16.0
mime - 2.0.0 2.0.0
nested - 1.0.0 1.0.0
path - 1.9.1 1.9.1
plugin_platform_interface - 2.1.8 2.1.8
sky_engine - 0.0.99 0.0.99
source_span - 1.10.0 1.10.0
sprintf - 7.0.0 7.0.0
stream_transform - 2.1.0 2.1.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
url_launcher_android - 6.3.14 6.3.14
url_launcher_ios - 6.3.1 6.3.1
url_launcher_linux - 3.2.1 3.2.1
url_launcher_macos - 3.2.1 3.2.1
url_launcher_platform_interface - 2.3.2 2.3.2
url_launcher_web - 2.3.3 2.3.3
url_launcher_windows - 3.1.3 3.1.3
vector_math - 2.1.4 2.1.4
video_player_android - 2.7.16 2.7.16
video_player_avfoundation - 2.6.3 2.6.3
video_player_platform_interface - 6.2.3 6.2.3
video_player_web - 2.3.3 2.3.3
web - 0.5.1 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

0/20 points: Compatible with dependency constraint lower bounds

downgrade analysis failed failed with 10 errors:

  • UNDEFINED_FUNCTION - lib/src/answer_format/agreement_answer_format.g.dart:12:15 - The function '$enumDecodeNullable' isn't defined.
  • UNDEFINED_FUNCTION - lib/src/answer_format/agreement_answer_format.g.dart:15:11 - The function '$enumDecodeNullable' isn't defined.
  • UNDEFINED_FUNCTION - lib/src/answer_format/boolean_answer_format.g.dart:13:15 - The function '$enumDecodeNullable' isn't defined.

Run flutter pub downgrade and then flutter analyze to reproduce the above problem.

You may run dart pub upgrade --tighten to update your dependency constraints, see dart.dev/go/downgrade-testing for details.

Analyzed with Pana 0.22.15, Flutter 3.24.5, Dart 3.5.4.

Check the analysis log for details.