mixi2ãFlutter製ã ã¨èãã¦ã使ãã¯ããã¦ã¿ããã©ã
ãããå¿å°ã¨ãå«ãã¦ãããããç´ æµã ãªã¨æãã
ã©ã¤ã»ã³ã¹ãã¼ã¸ã®å©ç¨ã©ã¤ãã©ãªãè¦ã¦ã¿ãã¨ãã®åå¿é²(*´Ïï½*)
è¦ã¦ã¿ãã¨ãç¥ããªããã¦ããªããã±ã¼ã¸ããããããã£ãã®ã§ã
ã¡ãã£ã¨æ´çãã¦ã¿ã(2024å¹´12æ18æ¥æç¹)
ã©ã¤ã»ã³ã¹ãã¼ã¸ã¯ä»¥ä¸ããã¿ãã
- è¨å® > mixi2ã«ã¤ã㦠> ã©ã¤ã»ã³ã¹
注æäºé
ã©ã¤ã»ã³ã¹ãã¼ã¸ã«æ¸ããã¦ãããã®ãã¾ã¨ããã ããªã®ã§ã
å®éã«ã¯ä½¿ã£ã¦ããªããã®ãéæ¥çã«ã¤ãã£ã¦ãããã®ãå«ã¾ãã¦ããå¯è½æ§ãããã¾ã
å
¬å¼æ
å ±ã§ã¯ãªãã®ã§ãããã¾ã§åèç¨åº¦ã§ï¼
ãã¼ã¹é¨å
åå°é¨åã¯ãããªæãã£ã½ãã馴æã¿ããæ§æ
- ç¶æ 管çãªã©: riverpod + flutter_hooks + freezed
- ã«ã¼ãã£ã³ã°: go_router
- ãã©ã³ã: google_fonts(Noto Serif Japanese / Roboto)
- Service Locator: get_it
- ãã®ã³ã°: logger / logging
- Lint: flutter_lints / custom_lint
- Googleç³»
- flutterfire: analytics/crashlytics/messagingã®ã¿
- Googleèªè¨¼: googleapis_auth / google_identity_service_web
- ã¢ãã¿ãªã³ã°
- bugsnag_flutter / bugsnag_bridge
- ã¢ãã¿ãªã³ã°ãã¨ã©ã¼ãã©ããã³ã°ãµã¼ãã¹ã®Bugsnag
- ããã°ã©ãã³ã°ãã©ãã¤ã
å ±éçãªæ©è½ãªã©
å
¬å¼ãCommunityãåºãã¦ããç³»ã®
å
±éçãªæ©è½ãªã©ã¯ãããªæãã£ã½ã
- Flutter Package / Flutter Communityç³»
- ä»ã®ã¢ããªã®èµ·åãªã©: android_intent_plus
- ãããã¯ã¼ã¯ã®æ¥ç¶ç¶æ : connectivity_plus
- 端æ«æ å ±: device_info_plus
- ããã±ã¼ã¸æ å ±: package_info_plus
- ã¸ã£ã¤ããªã©ã®ã»ã³ãµã¼ç³»: sensors_plus
- ã·ã§ã¢æ©è½: share_plus
- RAMãµã¤ãº: system_info_plus
- URLã®èµ·å: url_launcher
- WebView: webview_flutter
- è¦ãã¦ãç¯å²ã¸ã®è¡¨ç¤ºæ¤ç¥: visibility_detector
- ãã¼ããã·ã§ã³ã®ãã§ãã¯ãåå¾ãªã©: permission_handler
- è¨å®ç»é¢ãéã: app_settings
- ãã¼ã«ã«éç¥: flutter_local_notifications
- ã¢ããªå ã¬ãã¥ã¼: in_app_review
- ãã¼ã ç»é¢ã®ã¢ããªã¢ã¤ã³ã³ã®ããã¸: app_badge_plus
- å¥ã¢ããªããå ±æã®åä¿¡: receive_sharing_intent
- ã·ã§ã¢æ©è½: appinio_social_share
- DeepLink: app_links
- ã¹ããã®ããªããªæ¤ç¥: shake
- QRã³ã¼ãçæ: qr
å¤è¨èªå¯¾å¿
slagã¯ãã£ã¡ã便å©ãã
ç»å/åç»ç³»
ãã®ããããããå ¨ç¶ç¥ããªããã¤ã°ãããã
表示ãé¸æ
- extended_image
- å¤æ©è½ãªImageã¦ã£ã¸ã§ãããplaceholderãcache networkãzoomãeditãªã©ãªã©
- video_player
- åç»åçã¦ã£ã¸ã§ãã
- file_picker
- ãã¤ãã£ãã®ãã¡ã¤ã«ã¨ã¯ã¹ããã¼ã©ã¼ãå©ç¨ãããã¡ã¤ã«é¸æ
- image_gallery_saver
- ç»åãä¿åã§ããimage_picker
å å·¥ã»å§ç¸®ã»è»½éå
- get_thumbnail_video
- åç»ãURLããã®ãµã ãã¤ã«ä½æ
- blurhash_ffi
- ç»åãããã¬ã¼ã¹ãã«ãã¼ç¨ã®ã¼ãããç»åãçæãBlurhash
- image
- ç»åæä½ã©ã¤ãã©ãªãèªã¿æ¸ãããã©ã¼ãããå¤æãªã©
- flutter_image_compress
- ç»åã®è»½éåãqualityãwidth/heightãªã©ãæå®ã§ãã
ãã®ä»
- flutter_video_info
- åç»æ å ±ã®åå¾ãtitleãheight/widthãmimetypeãªã©ãªã©
- screenshot
- archive
- zipãªã©ã®ãã¡ã¤ã«å§ç¸®é¢é£
- cross_file
- ã¯ãã¹ãã©ãããã©ã¼ã 対å¿ã®ãã¡ã¤ã«æä½
- path_provider
- temp dirãªã©ã®å種ãã¹ãåå¾
UIç³»: ããã¹ãå ¥å
- flutter_native_text_input
TextField
ã§ã¯ãªããnativeã®UITextView
ãEditText
ãå©ç¨ã§ããwapper widget
- string_validator
- validationã©ã¤ãã©ãªãvalidator.jsã®Dartå®è£ ï¼
UIç³»: Widgetç³»
- gradient_borders
- ã°ã©ãã¼ã·ã§ã³ã®ããæ ç·
- tabbar_gradient_indicator
- ã°ã©ãã¼ã·ã§ã³ã®ããã¿ããã¼
- flutter_slidable
- ã¹ã©ã¤ãã¢ã¯ã·ã§ã³ãããã¹ã©ã¤ãå¯è½ãªãªã¹ãé ç®
- nested_scroll_view_plus
- NestedScrollViewã®æ¡å¼µã©ã¤ãã©ãª
- scrollable_positioned_list
- ç¹å®ã®ãªã¹ãè¦ç´ ã¾ã§ã¹ã¯ãã¼ã«ã§ãããªã¹ã
- scrolls_to_top
- iOSã®scrolls-to-topãå®ç¾ããããã®ã©ã¤ãã©ãª
- smooth_page_indicator
- ããããPageIndicator
- super_tooltip
- å¤æ©è½ãã¼ã«ããã
- ã¢ãã¡ã¼ã·ã§ã³: lottie / rive
æéç³»
- time
- æ¥æç¨ã®ä¾¿å©ãªExtensions
- timeago
- 1æéåããªã©ã«ãã¦ãããã©ã¤ãã©ãª
- timezone
- ã¿ã¤ã ã¾ã¼ã³é¢é£
ãã¼ã«ã«ãã¼ã¿ç³»
- shared_preferences
- flutter_secure_storage
- ã»ãã¥ã¢ãªã¹ãã¬ã¼ã¸ã¸ã®èªã¿æ¸ã(iOS Keychain or Android EncryptedSharedPreferences)
- isar / isar_generator
- ãã¼ã«ã«ã§éåæãªNoSQLãã¼ã¿ãã¼ã¹ãHiveã®å¾ç¶ã£ã½ã
æåæä½/ãã©ã¼ãããç³»
- recase
- camelCaseãªã©ã¸ã®å¤æ
- charset_converter
- æåã¨ã³ã³ã¼ãã£ã³ã°ã®å¤æ
- flutter_charset_detector
- æåã¨ã³ã³ã¼ãã£ã³ã°ã®æ¤åº
- format
- sprintf
- sprintfã®Dartå®è£
JSON/YAML/CSVãªã©
Testing
- ç¾å¨æå»ã®æå®: clock
- éåææ©è½ç¨ : fake_async
- ãã¡ã¤ã«ã·ã¹ãã ã®Mockå: file
- CIç°å¢ã®æ¤ç¥: ci
- matcher
- leak_tracker / leak_tracker_testing
- timing
- ããã©ã¼ãã³ã¹è¨æ¸¬ç¨ã®æéè¨æ¸¬ããã±ã¼ã¸
- test_api ... ???
ãã®ä»ãããã
- IDçæ: ulid / uuid
- ã©ã¤ã»ã³ã¹ãªã¹ãçæ: flutter_oss_licenses & dart_pubspec_licenses
- JWTã®ãã³ã¼ã: jwt_decode
- MIMEã¿ã¤ãå¤å®: mime
- dartx
- utilsç³»ã®extensions
- metadata_fetch
- Webãã¼ã¸ããOpenGraphæ å ±ãªã©ãåå¾ããã©ã¤ãã©ãª
- petitparser
- ãã¼ãµã¼ã©ã¤ãã©ãª
- synchronized
- Javaã®
synchronized
ã®ããã«ä¸¦åå®è¡ãå®å ¨ã«è¡ãã©ã¤ãã©ãª
- Javaã®
- xxh3
- é«éã¯ããã·ã¥ã¢ã«ã´ãªãºã ã®Dartå®è£ XXH3 hashing algorithm
- material_color_utilities
- Material Design3ã§å©ç¨ãããã¢ã«ã´ãªãºã ãutils
- ç»åããã®ãã¼ãã«ã©ã¼é¸æãã«ã©ã¼ãã¼ã³çæãªã©
- dbus
- built_value
- ObjectãEnumã®Serializationãªã©ãããæãã«ãã¦ããã
- graphs
- Node/Edgeãããã°ã©ãã®ãã¼ã¿æ§é
- typed_data
- åä»ããã¼ã¿ãªã¹ãã®utility
- vector_math
- ãã¯ã¿ã¼ç®è¡ç³»ã®ã©ã¤ãã©ãªã2Dã3Dã®Vectorã¨ãMatrixã¨ã
- macros
è½ã¡çããããå
¬å¼ããã°ã¨ãã§è©³ç´°ãªæ§æãªã©ãã
è¨äºã«ãªã£ã¦å
¬éãããã¨ãããªã(*´Ïï½*)
ãã¾ã
ãµã¼ãã¼ãDartï¼
ã©ã¤ã»ã³ã¹ã«gRPCãWebãµã¼ããå«ã¾ãã¦ãã¦ã
monorepoï¼ãã«ã¹ã¿ãã¯Dartã£ã½ããããï¼
- gRPCé¢é£
- Webãµã¼ãé¢é£
- nm
- Linuxä¸ã®ãããã¯ã¼ã¯æ¥ç¶ã管çããNetrowkManagerã¸ã®æ¥ç¶ã¯ã©ã¤ã¢ã³ã
- http_client_helper
- httpãªã¯ã¨ã¹ãã®ãã£ã³ã»ã«ããªãã©ã¤ãªã©ã®ãã«ãã¼
ãã«ããã¼ã¸ã¯Freshdeskã£ã½ãï¼
freshdesk
ã¨ãããã¼ã¯ã¼ããå«ã¾ãã¦ãæ°ããã