Swift Charts、ウィジェット、サーバサイドのSwiftを使用して空気質に関する最新情報をいち早く提供する、Kyle Bashour氏のアプリ「Paku」をご紹介します。
͏
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏
呼吸を楽にするApple WatchのPaku
2020年9月のある朝、Kyle Bashour氏は多くのサンフランシスコ市民と同じように、空がオレンジ色に染まっていることに気付きました。
テネシー大学ノックスビル校でコンピュータサイエンスを専攻したBashour氏は、卒業後、大手テクノロジー企業への就職に合わせてベイエリアに引っ越してきていました。Bashour氏は、空がオレンジ色に染まるという奇妙な現象に遭遇したことを機に、iOSのサイドプロジェクトを立ち上げました。ユーザーに最も近いPurpleAirモニタリングセンサーから空気質データを取得するアプリとウィジェット、「Paku」です。
Paku
対応デバイス:iPhone、iPad、Mac、Apple Watch
チームの規模:1人
拠点:オレゴン州ポートランド
「ウィジェットを配置できるようになったばかりの頃で」と現在ポートランドに住んでいるBashour氏は言います。「v.1は文字通りPurpleAirのデータを表示する単なるウィジェットでした。1日で構築し、公開しました。結構評判がよく、興味を持ってくれた人も一定数いました。それならばということで、このプロジェクトを続けることにしました」
その後の数週間で、Bashour氏はマップビューを追加し、AQI(空気質指数)のいくつかの数値を丸め、グラフやプッシュ通知などの追加機能を統合しました。WWDC23でwatchOS 10が登場したとき、Bashour氏はWatchアプリ全体をあらためて検討し、「Paku」をこのプラットフォームに展開しました。そして現在、「Paku」はiOS、iPadOS、macOS、watchOSに対応する最高水準のタイトルとして、操作しやすいSwift Charts、優れたスマートスタックウィジェット、一目で確認できる(そしてハイパーローカルな)空気質の最新情報を提供しています。
「自分は空気質の専門家ではありません。普通の人より少し詳しいだけです」
まだサイドプロジェクトである「Paku」は、主にSwiftUIを使用して構築されています。Bashour氏によると、一部の画面ではUIKitでラップされたSwiftUIビューが「上部に配置される」といいます。公開当初からWidgetKitに対応し、MapKit、アクションボタン、ライブアクティビティ、App Intentにも随時対応してきました。「Appleが提供するAPIは、簡単でコスト効率に優れています」とBashour氏は言います。
また、「Paku」はSwift Actorを使用し、メモリキャッシュを安全かつ簡単に実装できます。「バックエンドで、センサーデータのメモリ内キャッシュを使用しています。文字通り、辞書が入ったSwift Actorです。これによって、非同期関数を使用するAPI実装でとても簡単にデータを取得できます。センサーの更新時にデータの競合を心配する必要はありません」
さらに、サーバサイドのSwiftを活用し、リアルタイムのAQIデータモニタリングを処理するための共有モデルを設定しました。「高速で軽く、メモリ占有量が非常に少ないため、別の言語を学ぶ必要はありません。バックエンド開発が苦手なインディーズ/個人デベロッパには難しいことも、簡単にできるようになりましたね」
Bashour氏は、自分はデザイナーではないとし、コードを使ってデザインすることを好むといいます。「watchOSに優れたデザイン言語があるので助かります」とBashour氏は言います。「チャートの構築方法を学ぶために、WWDCのビデオを見て、サンプルコードを詳しく調べました。どのガイドラインも詳しく書いてあり、とてもすばやく簡単に構築できるようになりました。watchOS 10は実にすばらしいですね」
Bashour氏によると、現在「Paku」ユーザーの約半数がApple Watchを使用しているとのこと。彼らはアプリの成長を待ち望んでいるはずです。まさに単一機能を極めたアプリであり、デベロッパは謙虚そのものです。「空気質にとても敏感な人の話を聞くのは勉強になります」とBashour氏は言います。「自分は空気質の専門家ではありません。普通の人より少し詳しいだけです」
 |
デベロッパのストーリー
|
呼吸を楽にするApple WatchのPaku
|
2020年9月のある朝、Kyle Bashour氏は多くのサンフランシスコ市民と同じように、空がオレンジ色に染まっていることに気付きました。
|
テネシー大学ノックスビル校でコンピュータサイエンスを専攻したBashour氏は、卒業後、大手テクノロジー企業への就職に合わせてベイエリアに引っ越してきていました。Bashour氏は、空がオレンジ色に染まるという奇妙な現象に遭遇したことを機に、iOSのサイドプロジェクトを立ち上げました。ユーザーに最も近いPurpleAirモニタリングセンサーから空気質データを取得するアプリとウィジェット、「Paku」です。
|
|
Paku
|
対応デバイス:iPhone、iPad、Mac、Apple Watch チームの規模:1人 拠点:オレゴン州ポートランド
|
ダウンロード
|
|
「ウィジェットを配置できるようになったばかりの頃で」と現在ポートランドに住んでいるBashour氏は言います。「v.1は文字通りPurpleAirのデータを表示する単なるウィジェットでした。1日で構築し、公開しました。結構評判がよく、興味を持ってくれた人も一定数いました。それならばということで、このプロジェクトを続けることにしました」
|
その後の数週間で、Bashour氏はマップビューを追加し、AQI(空気質指数)のいくつかの数値を丸め、グラフやプッシュ通知などの追加機能を統合しました。WWDC23でwatchOS 10が登場したとき、Bashour氏はWatchアプリ全体をあらためて検討し、「Paku」をこのプラットフォームに展開しました。そして現在、「Paku」はiOS、iPadOS、macOS、watchOSに対応する最高水準のタイトルとして、操作しやすいSwift Charts、優れたスマートスタックウィジェット、一目で確認できる(そしてハイパーローカルな)空気質の最新情報を提供しています。
|
|
「自分は空気質の専門家ではありません。普通の人より少し詳しいだけです」
|
Kyle Bashour氏、Paku
|
|
まだサイドプロジェクトである「Paku」は、主にSwiftUIを使用して構築されています。Bashour氏によると、一部の画面ではUIKitでラップされたSwiftUIビューが「上部に配置される」といいます。公開当初からWidgetKitに対応し、MapKit、アクションボタン、ライブアクティビティ、App Intentにも随時対応してきました。「Appleが提供するAPIは、簡単でコスト効率に優れています」とBashour氏は言います。
|
また、「Paku」はSwift Actorを使用し、メモリキャッシュを安全かつ簡単に実装できます。「バックエンドで、センサーデータのメモリ内キャッシュを使用しています。文字通り、辞書が入ったSwift Actorです。これによって、非同期関数を使用するAPI実装でとても簡単にデータを取得できます。センサーの更新時にデータの競合を心配する必要はありません」
|
 |
さらに、サーバサイドのSwiftを活用し、リアルタイムのAQIデータモニタリングを処理するための共有モデルを設定しました。「高速で軽く、メモリ占有量が非常に少ないため、別の言語を学ぶ必要はありません。バックエンド開発が苦手なインディーズ/個人デベロッパには難しいことも、簡単にできるようになりましたね」
|
Bashour氏は、自分はデザイナーではないとし、コードを使ってデザインすることを好むといいます。「watchOSに優れたデザイン言語があるので助かります」とBashour氏は言います。「チャートの構築方法を学ぶために、WWDCのビデオを見て、サンプルコードを詳しく調べました。どのガイドラインも詳しく書いてあり、とてもすばやく簡単に構築できるようになりました。watchOS 10は実にすばらしいですね」
|
Bashour氏によると、現在「Paku」ユーザーの約半数がApple Watchを使用しているとのこと。彼らはアプリの成長を待ち望んでいるはずです。まさに単一機能を極めたアプリであり、デベロッパは謙虚そのものです。「空気質にとても敏感な人の話を聞くのは勉強になります」とBashour氏は言います。「自分は空気質の専門家ではありません。普通の人より少し詳しいだけです」
|
|
初回公開日:2025年6月9日
|
|
|
|
|
|
|
|