📝

【個人開発 x iOS】ポモドーロテクニックの活用を助けるアプリ「EZ Pomo(イージーポモ)」をつくった 📝

2023/01/30に公開

kamimi です。こんにちは。

ついに今月5つ目のiOSアプリを作ったので、その紹介と技術的な話とか書こうと思います。ちなみに今月の新規アプリ作成はこれで最後です。1ヶ月で合計5つリリース!頑張った私!

話を戻します。

去年ポモドーロテクニックというタイムマネジメント方法を知り、実践しています。ちなみにおすすめの本は考案者が書いている『どんな仕事も「25分+5分」で結果が出る ポモドーロ・テクニック入門』です。

知らない人のために、ChatGPTに答えてもらったポモドーロテクニックについての説明を載せます。

ポモドーロテクニック (Pomodoro Technique) は、タスク管理のための方法です。25分の集中作業と5分の休憩からなるサイクルを繰り返します。このテクニックは、タスクの完了、集中力の向上、ストレス軽減などの効果があると言われています

ポモドーロテクニックは有名なので、いろんなアプリがある印象です。私はもともと紙に物理の紙にメモを書いていましたが、途中からアプリを使おうと思い始めました。理由は紙だとオンラインに記録が残らないからです・・・
たくさんあるアプリの中から、一つ選んで使ってみていたのですが、自分が紙の時に使っていた見た目と違かったり、機能が豊富すぎて使いこなせなかったりしました。

というわけで自分用のポモドーロ用アプリを作ろう!となって作ったのがこのアプリです。

後から思ったのですが、ポモドーロ用のアプリは本当にたくさんあるのですが、私のように自分なりの使いやすいアプリを求めてこんなにたくさんのアプリが出ているのかなと思いました。

まあみんな目的はタスクを効率よく進めたい、終わらせたいだと思うので、その目的が達成できればどんなアプリでもOKですよね。

というわけで私も私のためのアプリを作りました。

アプリ名は他の機能豊富な類似アプリとの違いとして、UIやできることが限られたシンプルなアプリかなと思ったので、簡単に使えるポモドーロ用アプリ。。Easy Pomodoro。。長いので、「EZ Pomo」となりました。

こんな機能

一般的なTODOアプリに、ポモドーロテクニックの要素を加えています。
具体的にはタスクに必要なポモドーロ数、そのタスク中に中断した回数をカウントできるようになっています。
普段自分が紙に書いていることをアプリに落としました。

https://twitter.com/kamimi_01/status/1619848192681738240?s=20&t=OQ8QJs9LcFAWYVJvX9psdQ

インストール方法

App Storeのリンクはこちらです。

https://apps.apple.com/jp/app/ez-pomo/id1668609447?l=ja

制作過程

自分のメモとしても制作過程を残しておきます。
リリースまでは8時間くらいだと思います。

使用した技術

  • Swift
  • SwiftUI

変わらずSwiftUIです。

ライブラリは

  • Lottie
  • Realm

を使ってます。Realmはデータ管理用です。

実装

このアプリはUIやデータ管理部分のロジックはふれまねから流用しました。

普通のTODOアプリに近いし結構簡単かなあと思っていたのですが、チェックボタン周りが実装だけではなくUI、UX面、仕様も含めて決めるのが難しかったなと思います。

一般的なTODOアプリと違って、EZ PomoのTODO詳細画面は、TODOの詳細を確認する、変更する、進捗を確認するという3つの役割を持っていたためでした。

例えば、こんなことを実現しました。

  • チェックボタンの数は変えることができる
      - 完了したポモドーロがある場合でも可能。ただしその場合は完了したポモドーロ数はリセットされる
  • チェックボタンを押すことで、完了したポモドーロの数を変えることができる

何を言っているかわからないかもしれないので、GIFを貼ります。

また、今回初めて共有シートを実装してみることにしました。
というのもこのアプリはナビゲーションバーに「今日のTODOリスト」と書いてあるように、1日分しか記録することができません。なので、翌日になったら前日分を消すなりすることを想定しています。本当は毎日記録できるようにカレンダーとか実装したかったのですが、工数かかりそうなのでやめました。

でも記録がなくなるのは困るので(そもそもオンラインで記録を貯めるためにこのアプリを作っているので)、共有シートを実装して別アプリにテキストで出力するようにしました。

ちなみにこんな感じに出力されます。フォーマットは完全に私の好みです。。

初めて知ったのですがiOS16.0以降から、SwiftUIがデフォルトで共有シートを実装できる構造体ShareLinkを提供しています。調べたことはここに書くと長くなるので、別で記事を書いています。よければご覧ください。

https://qiita.com/kamimi01/items/589fd14752f9808bd45b

審査

一発でapproveもらいました!わーい。

おわりに

自分のためのポモドーロアプリを作ってみました。今回はここまで個人開発で作ってきたアプリとは違い、類似アプリがすでにあるとわかった時点からの開発でした。

これでタスク消化がより捗ると嬉しいです。😊

ただTODOリスト画面のUIがとっても微妙なので、なんとかしたいです。。笑。

まだまだ改善点は多いですが、私みたくまだポモドーロ初心者で、まずはシンプルなポモドーロアプリを使ってみたいという人にはいいかもしれません。

目的はタスクを効率よく進めることですので、たくさんあるアプリやこのEZ Pomoが合わなければ独自のアプリを作ってもいいですね。笑(こうやってTODOアプリがたくさんできてるんだろう。いいじゃないの。)

みなさんも良いポモドーロを!📝

Discussion