chatai 2.1.0
chatai: ^2.1.0 copied to clipboard
This is a ChatGPT tool written in Flutter that supports packaging for mobile, desktop, and web platforms.
We analyzed this package 3 hours ago, and awarded it 65 pub points (of a possible 160):
0/10 points: Provide a valid pubspec.yaml
-
pubspec.yamldoesn't have ahomepageentry. -
pubspec.yamldoesn't have arepositoryentry.
5/5 points: Provide a valid README.md
0/5 points: Provide a valid CHANGELOG.md
No `CHANGELOG.md` found.
Changelog entries help developers follow the progress of your package. Check out the Dart conventions for Maintaining a package changelog.
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.
0/10 points: 20% or more of the public API has dartdoc comments
55 out of 335 API elements (16.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: bingSearch, bingSearch.fetchAndParse, bingSearch.main, chat, chat.ChatWindow.
0/10 points: Package has an example
No example found.
See package layout guidelines on how to add an example.
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 `Android`.
Because:
package:chatai/chatai.dartthat imports:package:chatai/pages/setting.dartthat imports:package:chatai/controller/settings.dartthat imports:package:chatai/utils/package.dartthat imports:package:package_info_plus/package_info_plus.dartthat imports:package:package_info_plus/src/package_info_plus_windows.dartthat imports:package:package_info_plus/src/file_version_info.dartthat imports:package:win32/win32.dartthat declares support for platforms:Windows.
Package does not support platform `iOS`.
Because:
package:chatai/chatai.dartthat imports:package:chatai/pages/setting.dartthat imports:package:chatai/controller/settings.dartthat imports:package:chatai/utils/package.dartthat imports:package:package_info_plus/package_info_plus.dartthat imports:package:package_info_plus/src/package_info_plus_windows.dartthat imports:package:package_info_plus/src/file_version_info.dartthat imports:package:win32/win32.dartthat declares support for platforms:Windows.
Package does not support platform `Windows`.
Because:
package:chatai/chatai.dartthat imports:package:chatai/components/conversation.dartthat imports:package:chatai/repository/conversation.dartthat imports:package:sqflite_common_ffi_web/sqflite_ffi_web.dartthat declares support for platforms:Web.
Package does not support platform `Linux`.
Because:
package:chatai/chatai.dartthat imports:package:chatai/pages/setting.dartthat imports:package:chatai/controller/settings.dartthat imports:package:chatai/utils/package.dartthat imports:package:package_info_plus/package_info_plus.dartthat imports:package:package_info_plus/src/package_info_plus_windows.dartthat imports:package:package_info_plus/src/file_version_info.dartthat imports:package:win32/win32.dartthat declares support for platforms:Windows.
Package does not support platform `macOS`.
Because:
package:chatai/chatai.dartthat imports:package:chatai/pages/setting.dartthat imports:package:chatai/controller/settings.dartthat imports:package:chatai/utils/package.dartthat imports:package:package_info_plus/package_info_plus.dartthat imports:package:package_info_plus/src/package_info_plus_windows.dartthat imports:package:package_info_plus/src/file_version_info.dartthat imports:package:win32/win32.dartthat declares support for platforms:Windows.
Package does not support platform `Web`.
Because:
package:chatai/chatai.dartthat imports:package:chatai/components/conversation.dartthat imports:package:chatai/controller/message.dartthat imports:package:chatai/repository/message.dartthat imports:package:chatai/data/you.dartthat imports:package:vibration/vibration.dartthat declares support for platforms:Android,iOS.
0/0 points: WASM compatibility
Package not compatible with runtime wasm
Because:
package:chatai/chatai.dartthat imports:package:chatai/pages/setting.dartthat imports:package:chatai/controller/settings.dartthat imports:package:get_storage/get_storage.dartthat imports:package:get_storage/src/storage_impl.dartthat imports:package:get_storage/src/storage/html.dartthat imports:dart:html
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.cn/web/wasm for details.
30/50 points: code has no errors, warnings, lints, or formatting issues
Found 58 issues. Showing the first 2:
WARNING: Unused import: 'package:chatai/data/glm.dart'.
lib/repository/message.dart:4:8
╷
4 │ import 'package:chatai/data/glm.dart';
│ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
╵
To reproduce make sure you are using the lints_core and run flutter analyze lib/repository/message.dart
WARNING: The receiver can't be 'null' because of short-circuiting, so the null-aware operator '?.' can't be used.
lib/utils/bingSearch.dart:32:43
╷
32 │ var abstract = abstractElement?.text?.trim();
│ ^^
╵
To reproduce make sure you are using the lints_core and run flutter analyze lib/utils/bingSearch.dart
0/10 points: All of the package dependencies are supported in the latest version
| Package | Constraint | Compatible | Latest | Notes |
|---|---|---|---|---|
cupertino_icons |
^1.0.2 |
1.0.8 | 1.0.8 | |
dart_openai |
^4.0.0 |
4.1.4 | 6.1.1 | |
equatable |
^2.0.5 |
2.0.8 | 2.0.8 | |
flex_color_scheme |
^8.2.0 |
8.4.0 | 8.4.0 | |
flutter_easyloading |
^3.0.5 |
3.0.5 | 3.0.5 | |
flutter_launcher_icons |
^0.14.3 |
0.14.4 | 0.14.4 | |
flutter_math_fork |
^0.7.4 |
0.7.4 | 0.7.4 | |
font_awesome_flutter |
^10.4.0 |
10.12.0 | 10.12.0 | |
freezed |
^2.3.2 |
2.5.8 | 3.2.4 | |
get |
^5.0.0-release-candidate-9.2.1 |
5.0.0-release-candidate-9.3.2 | 5.0.0-release-candidate-9.3.2 | |
get_it |
^7.2.0 |
7.7.0 | 9.2.0 | |
get_storage |
^2.1.1 |
2.1.1 | 2.1.1 | |
html |
^0.15.4 |
0.15.6 | 0.15.6 | |
http |
^1.4.0 |
1.6.0 | 1.6.0 | |
markdown |
^7.3.0 |
7.3.0 | 7.3.0 | |
markdown_widget |
^2.3.2+8 |
2.3.2+8 | 2.3.2+8 | |
package_info_plus |
^4.0.1 |
4.2.0 | 9.0.0 | |
path |
^1.8.3 |
1.9.1 | 1.9.1 | |
path_provider |
^2.0.13 |
2.1.5 | 2.1.5 | |
platform |
^3.1.6 |
3.1.6 | 3.1.6 | |
sqflite |
^2.2.6 |
2.4.2 | 2.4.2 | |
sqflite_common_ffi |
^2.3.6 |
2.4.0+2 | 2.4.0+2 | |
sqflite_common_ffi_web |
^1.0.0 |
1.1.1 | 1.1.1 | |
universal_platform |
^1.1.0 |
1.1.0 | 1.1.0 | |
url_launcher_web |
^2.0.18 |
2.4.1 | 2.4.1 | |
uuid |
^3.0.7 |
3.0.7 | 4.5.2 | |
vibration |
^1.8.1 |
1.9.0 | 3.1.5 |
Transitive dependencies
| Package | Constraint | Compatible | Latest | Notes |
|---|---|---|---|---|
_fe_analyzer_shared |
- | 85.0.0 | 92.0.0 | |
analyzer |
- | 7.7.1 | 9.0.0 | |
archive |
- | 4.0.7 | 4.0.7 | |
args |
- | 2.7.0 | 2.7.0 | |
async |
- | 2.13.0 | 2.13.0 | |
build |
- | 2.4.2 | 4.0.3 | |
build_config |
- | 1.2.0 | 1.2.0 | |
characters |
- | 1.4.0 | 1.4.1 | |
checked_yaml |
- | 2.0.4 | 2.0.4 | |
cli_util |
- | 0.4.2 | 0.4.2 | |
code_assets |
- | 1.0.0 | 1.0.0 | |
collection |
- | 1.19.1 | 1.19.1 | |
convert |
- | 3.1.2 | 3.1.2 | |
crypto |
- | 3.0.7 | 3.0.7 | |
csslib |
- | 1.0.2 | 1.0.2 | |
dart_style |
- | 3.1.1 | 3.1.3 | |
dev_build |
- | 1.1.3+1 | 1.1.3+1 | |
device_info_plus |
- | 11.5.0 | 12.3.0 | |
device_info_plus_platform_interface |
- | 7.0.3 | 7.0.3 | |
fetch_api |
- | 2.3.1 | 2.3.1 | |
fetch_client |
- | 1.2.0 | 1.2.0 | |
ffi |
- | 2.1.4 | 2.1.4 | |
file |
- | 7.0.1 | 7.0.1 | |
flex_seed_scheme |
- | 4.0.1 | 4.0.1 | |
flutter_highlight |
- | 0.7.0 | 0.7.0 | |
flutter_spinkit |
- | 5.2.2 | 5.2.2 | |
flutter_svg |
- | 2.2.3 | 2.2.3 | |
freezed_annotation |
- | 2.4.4 | 3.1.0 | |
glob |
- | 2.1.3 | 2.1.3 | |
highlight |
- | 0.7.0 | 0.7.0 | |
hooks |
- | 1.0.0 | 1.0.0 | |
http_parser |
- | 4.1.2 | 4.1.2 | |
image |
- | 4.7.2 | 4.7.2 | |
json_annotation |
- | 4.9.0 | 4.9.0 | |
logging |
- | 1.3.0 | 1.3.0 | |
material_color_utilities |
- | 0.11.1 | 0.13.0 | |
meta |
- | 1.17.0 | 1.17.0 | |
native_toolchain_c |
- | 0.17.4 | 0.17.4 | |
nested |
- | 1.0.0 | 1.0.0 | |
package_config |
- | 2.2.0 | 2.2.0 | |
package_info_plus_platform_interface |
- | 2.0.1 | 3.2.1 | |
path_parsing |
- | 1.1.0 | 1.1.0 | |
path_provider_android |
- | 2.2.22 | 2.2.22 | |
path_provider_foundation |
- | 2.5.1 | 2.5.1 | |
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 | |
petitparser |
- | 7.0.1 | 7.0.1 | |
plugin_platform_interface |
- | 2.1.8 | 2.1.8 | |
pool |
- | 1.5.2 | 1.5.2 | |
posix |
- | 6.0.3 | 6.0.3 | |
process_run |
- | 1.2.4 | 1.2.4 | |
provider |
- | 6.1.5+1 | 6.1.5+1 | |
pub_semver |
- | 2.2.0 | 2.2.0 | |
pubspec_parse |
- | 1.5.0 | 1.5.0 | |
scroll_to_index |
- | 3.0.1 | 3.0.1 | |
source_gen |
- | 2.0.0 | 4.1.1 | |
source_span |
- | 1.10.1 | 1.10.1 | |
sqflite_android |
- | 2.4.2+2 | 2.4.2+2 | |
sqflite_common |
- | 2.5.6 | 2.5.6 | |
sqflite_darwin |
- | 2.4.2 | 2.4.2 | |
sqflite_platform_interface |
- | 2.4.0 | 2.4.0 | |
sqlite3 |
- | 3.1.2 | 3.1.2 | |
stack_trace |
- | 1.12.1 | 1.12.1 | |
string_scanner |
- | 1.4.1 | 1.4.1 | |
synchronized |
- | 3.4.0 | 3.4.0 | |
term_glyph |
- | 1.2.2 | 1.2.2 | |
tuple |
- | 2.0.2 | 2.0.2 | |
typed_data |
- | 1.4.0 | 1.4.0 | |
url_launcher |
- | 6.3.2 | 6.3.2 | |
url_launcher_android |
- | 6.3.28 | 6.3.28 | |
url_launcher_ios |
- | 6.3.6 | 6.3.6 | |
url_launcher_linux |
- | 3.2.2 | 3.2.2 | |
url_launcher_macos |
- | 3.2.5 | 3.2.5 | |
url_launcher_platform_interface |
- | 2.3.2 | 2.3.2 | |
url_launcher_windows |
- | 3.1.5 | 3.1.5 | |
vector_graphics |
- | 1.1.19 | 1.1.19 | |
vector_graphics_codec |
- | 1.1.13 | 1.1.13 | |
vector_graphics_compiler |
- | 1.1.19 | 1.1.19 | |
vector_math |
- | 2.2.0 | 2.2.0 | |
vibration_platform_interface |
- | 0.0.3 | 0.1.1 | |
visibility_detector |
- | 0.4.0+2 | 0.4.0+2 | |
watcher |
- | 1.2.0 | 1.2.0 | |
web |
- | 1.1.1 | 1.1.1 | |
win32 |
- | 5.15.0 | 5.15.0 | |
win32_registry |
- | 2.1.0 | 2.1.0 | |
xdg_directories |
- | 1.1.0 | 1.1.0 | |
xml |
- | 6.6.1 | 6.6.1 | |
yaml |
- | 3.1.3 | 3.1.3 |
To reproduce run dart pub outdated --no-dev-dependencies --up-to-date --no-dependency-overrides.
Found 6 issues. Showing the first 2:
The constraint `^4.0.0` on dart_openai does not support the stable version `5.0.0`.
Try running dart pub upgrade --major-versions dart_openai to update the constraint.
The constraint `^2.3.2` on freezed does not support the stable version `3.0.0`.
Try running dart pub upgrade --major-versions freezed to update the constraint.
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 12 errors:
NON_TYPE_AS_TYPE_ARGUMENT-lib/data/llm.dart:13:32- The name 'OpenAIChatCompletionChoiceMessageContentItemModel' isn't a type, so it can't be used as a type argument.UNCHECKED_USE_OF_NULLABLE_VALUE-lib/data/llm.dart:14:41- The property 'text' can't be unconditionally accessed because the receiver can be 'null'.ARGUMENT_TYPE_NOT_ASSIGNABLE-lib/data/llm.dart:52:22- The argument type 'List
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.23.3, Flutter 3.38.4, Dart 3.10.3.
Check the analysis log for details.