邪魔にならない Mole の設計
mole.fit を一日かけて作り直しました。いま読んでいるこのページです。投稿したとき、私は一行だけ書きました。静かで、信頼できて、邪魔をしない。アプリそのものと同じ思想だと。それが、最初のシェルスクリプト以来、Mole のデザインのすべてです。ここでは、それが実際に何を意味するかを書きます。
静かであることは制約です
静かさは雰囲気のように聞こえますが、ツールにとっては一連の厳しいルールです。パネルは完全に描画されるか、隠されるかのどちらかで、途中まで描かれたカードや、少しずつ組み立てられる結果画面はありません。スキャンが完了してから、画面は結果の状態に入ります。短い待ちでは何も表示せず、長い待ちでは落ち着いた作業状態をひとつだけ見せます。完了レイアウトはデータが届く前に領域を確保するので、ウィンドウが跳ねません。
これらは装飾ではなく、エンジニアリング上の制約です。明示的な操作状態、遅延付きの読み込み表示、安定したコンテナサイズ、キャンセル経路が必要です。その仕組みがなければ、トランジションを足しても不確かさを動かすだけです。ユーザーが見る落ち着きは、非同期の仕事を下で予測可能にすることで生まれます。
目指しているのは、ずっと見張っていなくてもよいツールです。処理を始め、終わったら自分の作業に戻る。それだけで済ませたいと思っています。画面の点滅やレイアウトの揺れで何度も注意を引くアプリではなく、よくできた家電のような存在が理想です。
触る前に、やること一覧を見せる
Mole でいちばん重要なデザイン判断は、削除計画をサイズ付きで見せ、確認を待つことです。通常のユーザーファイルの削除はゴミ箱へ行き、そこから復旧できます。ホームフォルダのようなナビゲーションの根には削除オプションがありません。インターフェースは意図を明確にしますが、サービス層は実行時にすべてのパスを検証します。警告画面だけでは、安全の境界にはなりません。
安全性は、最後に警告ダイアログを出すだけでは保てません。スキャン中には削除せず、確認した項目だけを実行計画に含めます。実行時には対象と保護されたパスを再確認し、結果は削除済み・スキップ・失敗に分けて報告します。画面での確認と、その裏側で独立して行う検証の両方が必要です。
なぜクリーナーに太陽系があるのか
このようなツールは、清掃ボタンの付いたメニューバーアイコンだけでも作れます。でも、作られてはすぐに忘れられるソフトは、すでにたくさんあります。時間をかけるなら、画面を開いたときに心地よく感じるものにしたい。その思いから、五つの機能にそれぞれ天体を置きました。
「クリーン」は地球、「アプリ」は火星、「最適化」は水星、「分析」は木星、「ステータス」は太陽です。五つの飾りを並べるのではなく、一つの仕組みとして揃えています。テクスチャには天文画像を使い、地球は NASA の Blue Marble を基にしています。回転の向きと相対的な速さは実体に従い、どの惑星も同じコードで、いくつか決まったサイズで描かれます。ツールのなかの美しさは、ツールのほかの部分と同じように作られている限り問題ありません。惑星が生まれた長い話は 別の記事 にあります。
抑制がシステムです
Mole のデザイン作業の大半は引き算です。アプリは意図的にダークのみです。メニューバーパネルは壁紙の上に HUD のように浮き、暗いガラスがまぶしさを抑えます。そのため維持すべきライトモードも、考えるべきテーマ切り替えもありません。アプリ全体でひとつの書体スケール、サイトでひとつの書体スケールがあり、要素が単発のサイズや色を得ることはありません。値はすべて共有トークンから来るので、どれかひとつが叫ばなくてもページが均質に読めます。
そして、よい機能でも出さないものがたくさんあります。Mac には Mole ができてしまいそうな、しかしすべきでない技がたくさんあります。ファイル削除を任せるツールは、頭に収まるくらい小さく保たなければならないからです。よいアイデアにノーと言うのは、足すより難しく、アプリの落ち着きを保つ仕事の大半がそれです。何を作らないかの決め方は 別途書きました。
抑制はアクセシビリティにも当てはまります。フォーカスが飛び、コントロールのラベルが曖昧で、アニメーションが VoiceOver から状態を隠すなら、見た目の静かさだけでは足りません。読み上げ順、キーボードでの到達、Reduce Motion、安定したフォーカスは、同じ約束の一部です。インターフェースは、タスクが許す限り、ユーザーの注意をできるだけ使わないべきです。
そのルールは天体の表示にも当てはまります。「視差効果を減らす」がオンなら装飾的な回転を止め、状態が変わるときの移動も抑えます。動かなくても各機能を見分けられ、アニメーションを見なくても操作できるようにしています。静かさは見た目のスタイルだけでなく、ユーザーが望む表示に合わせることでもあります。
一つの考え方、三つの形
Mole にはコマンドラインツール、Mac アプリ、このウェブサイトという三つの形があります。大切にしていることは同じです。CLI は扱う範囲を決めて作業し、アプリはその内容を落ち着いた画面で見せ、サイトは何ができるかを伝えます。サイトを一日で作り直せたのは、足すものが少なく、減らしたいものが多かったからです。
それが全部です。静かな守り手であり、それ以上ではありません。自分の Mac のために、あるいは友人のために。時間は、あなたのものでありますように。