😸

【コピペ用】Flutterでよく使うpackageをいっぺんにinstall

2024/04/06に公開
4

駆け出しFlutterエンジニアのこたです。

個人的によく使うpackageをコピペでいっぺんにinstallできるように下にまとめてみました。
yamlファイルはコピペしづらかったり、バージョンを最新にできなかったりないので、terminalで実行する方を選んでいます。
※fvmを使うことを想定しています。

コード

fvm flutter pub add -d freezed
fvm flutter pub add -d build_runner
fvm flutter pub add -d auto_route_generator
fvm flutter pub add -d riverpod_generator
fvm flutter pub add flutter_hooks
fvm flutter pub add hooks_riverpod
fvm flutter pub add riverpod
fvm flutter pub add shared_preferences
fvm flutter pub add freezed_annotation
fvm flutter pub add json_annotation

fvm dart pub global activate flutter_gen

他によく使うpackageがあれば教えてください!

追記
osakiさんの親切なご指摘を参考にして、freezedbuild_runnerはdev_dependenciesに追加するようにしました。
僕みたいにdev_dependenciesとはなんぞやという人は、こちらの公式ドキュメント(以下公式doc)を参照するといいと思います!(これもosakiさんが引っ張ってきてくれました🙇優しすぎて背筋が伸びます)

https://dart.dev/tools/pub/dependencies#tighten-version-constraints-for-dev-dependencies

A dev dependency defines a package that you need only when developing. A finished app won't need these packages. Examples of these packages include tests or code generation tooling.

以下日本語訳(deepL)

開発依存は、開発時にのみ必要なパッケージを定義する。完成したアプリには、これらのパッケージは必要ありません。このようなパッケージの例としては、テストやコード生成ツールがあります。

完全に雑談ですが、強い方はまず公式docを参照して、そこに求める情報がない/理解できなかったら第三者の記事を参照されてる印象があります。
公式が一番正確だし、簡潔にまとめてくれたりすることが多いなぁと
(職場でも強い方に質問をすると、大体公式docを参照元として答えてくれます)

もちろん必ずしもそうではないかもですが、僕はそう心がけてみようかな、というお話💭

Discussion

osakiosaki

freezedやbuild_runnerは、dev_dependenciesで良さそうですね。dependenciesとdev_dependenciesの違いを気にした方が良いのではないかなと思いました。
https://pub.dev/packages/build_runner/install

こたこた

コメントありがとうございます!
恥ずかしながら両者の使い分けを全く意識できておらず、ご指摘いただいたおかげで初めてその違いを知ることができました🙇

反映させていただきます!

osakiosaki

参照されているQiita内の説明(チーム開発において〜)が私には???だったのですが、端的にこちらですかね。

Tighten version constraints for dev dependencies

A dev dependency defines a package that you need only when developing. A finished app won't need these packages. Examples of these packages include tests or code generation tooling.

あとはこの辺りでしょうか。
Dev dependencies

こたこた

再度ありがとうございます!
本当にご指摘ありがたい限りです、めちゃくちゃ勉強になります