Flutterで作成したアプリをリリースした話
はじめに
初めての投稿になります。個人開発で「仕事大嫌い」というアプリをリリースしました。仕事の愚痴をつぶやくというアプリです。android版は準備中です。
なぜ作ったか
私自身、仕事の愚痴が結構でてくるので、そんなときに発散できたらなぁと。仕事の愚痴に特化したSNSって見たことないなと思ったので作ってみました。Twitterでよくね?といわれると、それで終わりです。
開発を振り返って
良かった点
- App Storeの審査が初回で通ったこと。色々な方の記事を参考にリジェクトされそうな要素はあらかじめ潰しておきました。
悪かった点
- 開発の途中で出てきたアイデアを取り入れようとしたこと。工数が増えていくのでモチベの低下につながりました。初回リリースは最小限の機能だけでいいなと感じました。
使用技術
定番のみで作っています。
- Flutter(フロントエンド)
- 状態管理:Riverpod + StateNotifier + Freezed
- Firebase(バックエンド)
- Authentication
- Firestore
- Hosting
- Functions
- Remote Config
- Slack(管理者用)
- Slack API
使用したパッケージ(抜粋)
定番たち
shared_preferences
package_info_plus
url_launcher
visibility_detector
タイムラインをページングするために使っています。調べたら出てきます。
custom_pop_up_menu
吹き出しのポップアップを簡単に作れます。
top_snackbar_flutter
iOS版Twitterでツイート完了したら、上から出てくるやつです。
uuid
FirestoreのドキュメントIDをユニークで持たせたかったので使っています。
flutter_easyloading
本来の使い方かわかりませんが、Firestoreに書き込む処理を行うボタンをタップするときに、二重タップを防ぐために使用しています。
settings_ui
設定画面を簡単に作れます。
flutter_screenutil
ウィジェットサイズの調整が簡単になります。
pull_to_refresh
インスタのリフレッシュに近い感じにできます。
flutterfire_ui
ストリームで取得するデータを簡単にリスト表示できます。
like_button
いいねボタンにいい感じのアニメーションがつきます。
timeago
Twitterでよくみる「~時間前」「~日前」が簡単にできます。
最後に
初めてのリリースだったため、いろんなところでつまずきました。時間があれば個人的につまずいたところなどを記事にできればと思います。
Discussion