最近、Kanbox という iOS アプリを作っている。この記事では今どこまでできているかを紹介し、実際に書き出した共有画像を何枚か載せる。開発の詳しい話はまた後で書く。
作ろうと思った理由はそんなに複雑じゃない。小紅書の画像付き投稿、豆瓣の映画、小宇宙のポッドキャスト、GitHub のプロジェクト。それぞれに保存ボタンはあるけれど、昔保存したものを探そうとすると、まず「どこに保存したっけ」を思い出さないといけない。このリンクを全部同じ場所に置いて、ついでに「なぜ保存したか」も残しておきたかった。
まずはコンテンツを保存する
今はシステムの共有メニュー、クリップボード、アプリ内からの追加、ショートカットの4つからリンクを集められる。解析できたタイトル、著者、本文、画像はまとめて保存され、元のリンクも残る。
今回入れたのは、レシピが1つ、イスタンブールの写真が1組、映画が2本、ポッドキャストが2本、それから Coralbay-Rules と Nodus の2プロジェクト。どれも実際のリンクで、下の共有画像もこの内容を使っている。
ホーム画面には2列グリッドとギャラリーのレイアウトもある。文字を読みたいときは1列、画像を探すときは別の並べ方にすればいい。保存した時点で分類しなくてもよくて、タグやメモは後から足せる。

Kanbox-01 流れのイメージ:まず取り込んで、ゆっくり整理する
保存した瞬間に分類を終える必要はない。元のリンクをまず残し、解析できた内容も一緒に保存して、タグと自分のメモは後から足す。どこかのプラットフォームで失敗しても、そのリンクを捨てることにはならない。
ブックマークを共有画像にする
共有画像には詳細カード、9マス、ウォーターフォールコラージュの3種類のレイアウトがあり、配色や文字スタイルも調整できる。著者、本文、メディア、日付、タグ、QRコードは個別にオンオフでき、よく使う設定はデフォルトスタイルとして保存できる。
下の8枚はどれも元の比率のまま。長い内容は全文を展開することも、要約を使うこともできる。書き出す前に今回の共有用テキストだけを変えることもできて、元のブックマークには書き戻されない。内容が長すぎるときは複数の画像に分割できる。
本文中のプレビューは等比で縮小されていて、画像の下のリンクをタップするとフル解像度で見られる。

Kanbox-01 流れのイメージ:共有画像で変わるのは今回の見せ方で、元のブックマークではない
共有画像には独自のレイアウトとテキストがある。フィールドや要約、今回のテキストを調整して書き出しても、元のブックマークには反映されない。長い内容は複数枚に分けることもできる。
画像付き投稿、映画、ポッドキャスト、プロジェクト
小紅書:レシピと写真
日食記のレシピは動画ノート。共有画像に入るのは解析できたカバー画像とテキストで、動画はやはり元の再生画面か元の投稿で見る必要がある。

日食記レシピの共有画像
末梢和神经のイスタンブール写真は実際に11枚の画像を読み込めた。アプリ内では1枚ずつ開いて拡大でき、下の詳細カードでは1組の画像としてまとめて表示される。

イスタンブール写真の共有画像、11枚を含む
豆瓣:映画情報
豆瓣映画は専用の詳細レイアウトを使う。評価、原題、地域、ジャンル、公開日、上映時間が前に並び、その下にポスター、キャスト・スタッフ、あらすじが続く。
今回は『きっと、うまくいく』と『ロック、ストック&トゥー・スモーキング・バレルズ』を読み込んだ。2枚の共有画像は映画情報と元比率のポスターを保ち、あらすじは要約を使っている。評価と評価人数は読み込んだ時点のデータで、後から変わる可能性がある。

きっと、うまくいくの共有画像

ロック、ストック&トゥー・スモーキング・バレルズの共有画像
小宇宙:特定の1エピソード
ポッドキャストは単一エピソードのリンクを保存し、エピソードタイトル、カバー、説明が見られるほか、オンライン音声への入口もある。再生にはネットワークが必要で、保存したからといってエピソード全体の音声をダウンロードしたことにはならない。
ここでは2本、Photo Reason の写真家・厳佳林との対談と、『岩中花述』の魯豫と馬伊琍の対談。共有画像にはカバーと説明の要約が入り、再生はアプリ内か元のプラットフォームで開く。

Photo Reason 今回のエピソードの共有画像

岩中花述 今回のエピソードの共有画像
GitHub:プロジェクト紹介を残す
GitHub リポジトリは著者、プロジェクト紹介、トピックタグ、README の読み取りを試みる。今回は自分の2プロジェクトを使った。Coralbay-Rules はサブスクリプション変換とルーティング設定、Nodus は frpc の Web 管理パネル。
完全な README はブックマークに残り、短い共有画像には紹介と一部の内容だけが入る。リポジトリの統計も取得した時点の状態。

Coralbay-Rules の共有画像

Nodus の共有画像
保存した後、どうやって探すか
スターで重要なものを先に目立たせ、タグで分類する。ホーム画面の来源、種類、時間のフィルターは範囲を絞るのに向いている。検索は自分のブックマークと著者を対象にする。
たとえば「イスタンブール」で検索すると、あの写真のブックマークと対応する著者が見つかり、本文中のキーワードもハイライトされる。
インスピレーションコレクションは、順番のあるタグの組で内容を整理する。メモは単独で書くことも、あるブックマークに添えることもでき、保存した理由や思いつき、ポッドキャストで聞き返したい時間帯を一言添えられる。ランダム振り返りとウィジェットは、古いブックマークをめくるもう2つの入口になる。

Kanbox-01 流れのイメージ:覚えていることを、対応する入口から探す
検索、フィルター、振り返りは出発点が違う。キーワードがあれば検索、来源や時間だけ覚えていればフィルター、目標がなければランダムにめくる。タグとメモは、後で探すときに必要な手がかりを補うものだ。
現在の状態
Kanbox はまだ開発中で、UI は SwiftUI、ローカルデータは SwiftData、最低システムバージョンは iOS 18、iPhone と iPad 向け。システム共有拡張、ショートカット、ウィジェットもすでにある。
制限もある。プラットフォームの改版、ログイン制限、メディアURLの失効は解析に影響する。失敗したときは元のリンクと説明を残す。CloudKit は導入済みだが、デバイス間の同期はまだ完全な検証が必要。ZIP バックアップはブックマーク、メモ、コレクションのメタデータ、ローカルのメモ画像を保存し、すべてのリモート動画、音声、画像は含まない。

Kanbox-01 流れのイメージ:ブックマーク、バックアップ、リモートメディアがそれぞれ何を残すか
リンクを保存することは、リモートのファイルを全部ダウンロードしたことではない。ZIP は主にブックマークやメモなどのローカルデータをバックアップする。CloudKit の導入も、デバイス間同期が完全に検証済みだとはまだ書けない。
この記事は2026年10月2日時点の開発状況を記録したもので、ダウンロードの入口はまだ用意していない。2本目ではリンク解析について書く。プラットフォームごとにデータをどう取るか、失敗したときどう扱うか。
文中の8枚の共有画像は、Kanbox が実際に公開リンクを読み込んで生成したもの。プレビューは等比で縮小され、完全なファイルはブログの OSS に保存されている。第三者のテキスト、写真、ポスター、カバー、ロゴはそれぞれの権利者に帰属し、出典は文中のリンクを参照。