技術ブログを読むだけで終わらせない。
「あとで読む」「アイディアを残す」「引用して考える」までを、1つのアプリで完結させる──
その思想のもとで開発している、技術者向けネイティブ iOS アプリです。
現在、iOS / Mac 向けに開発中で、
MVP(Phase 1A + Phase 1B)が完了しています。
※ 本記事では開発コードネーム KiroBookmark として紹介します。
アプリ概要
KiroBookmark は、AIエンジニア・技術者向けに設計した
技術ブログ特化型ブックマーク & メモ管理 iOSアプリです。
- 技術記事をブックマーク
- メモの「種類」で思考を整理
- タグで知識を横断的に管理
- RSSで新着記事を自動収集
これらを SwiftUIネイティブUI と
2タブ + サイドメニュー構成で、直感的に操作できます。
解決したかった課題
技術ブログを日常的に読んでいると、次のような課題を感じていました。
- ブックマークだけが増え、後から見返さない
- 「なぜ良い記事だったのか」を忘れてしまう
- アイディア・TODO・引用メモが分散する
- RSS、ブラウザ、メモアプリが分断されている
KiroBookmark は
「読む → 考える → 残す → 再利用する」
という流れを、1つのアプリで完結させることを目的に設計しています。
主な機能(MVP 完成)
2タブ + サイドメニュー構成
- New Entry
- RSS由来の新着記事一覧
- Bookmark
- ユーザーが保存した記事一覧
- 右スワイプでサイドメニュー表示
- メモ種類別フィルタ
(いいね / アイディア / 感想 / TODO / その他 / 未読)
- メモ種類別フィルタ
ブックマーク管理
- URL追加
- カード形式での記事表示
- 削除・お気に入り登録
- ドメイン自動抽出
- RSS自動検出・定期更新
メモ機能(140文字制限)
記事ごとに、目的別の短文メモを作成できます。
- idea(アイディア)
- thought(感想)
- todo(TODO)
- quote(引用)
- other(その他)
WebView内で
テキスト選択 → 引用メモ作成
にも対応しています。
タグ管理
- 記事への複数タグ付け
- 使用頻度順に自動ソート
- タグからの横断的な絞り込み
統合検索
以下の項目をまとめて検索できます。
- 記事タイトル
- URL
- ドメイン
- メモ内容
- タグ名
記事閲覧体験
- アプリ内 WebView 表示
- 相対時間表示(例:3分前 / 2時間前)
- 未読バッジ表示
- 自動既読管理
- トースト通知による操作フィードバック
技術スタック
| 項目 | 技術 |
|---|---|
| UI | SwiftUI(iOS 17.0+) |
| 言語 | Swift 5.9+ |
| データ | Core Data |
| アーキテクチャ | MVVM + Repository Pattern |
| テスト | SwiftCheck + XCTest |
アーキテクチャ設計のポイント
- Repository Pattern による責務分離
- ViewModel単位での明確な状態管理
- RSS / URL検証を Service 層に分離
- New Entry / Bookmark のデータ分離設計
- プロパティベーステストによる仕様保証
個人開発でも
長期的に拡張できる構造を意識しています。
テストへの取り組み
プロパティテスト(SwiftCheck)
- ブックマーク重複防止
- URL検証
- メモ種類フィルタ
- WebView / サイドメニュー動作
ユニットテスト(XCTest)
- Repository層:CRUD操作
- ViewModel層:状態管理
- Service層:URL検証・RSS処理
UI中心のアプリでも、
ロジックは自動テストで守る方針です。
現在の制限事項
- データはローカル保存のみ(iCloud同期なし)
- 写真添付未対応(テキストメモのみ)
- Push通知未実装
- Swift 6 Concurrency 警告あり(動作影響なし)
今後の予定(Phase 2)
- 通知機能(RSS更新 / Push通知)
- ドメイン整理機能
- Markdown / JSON エクスポート
- AI要約・タグ自動推薦
- 写真添付対応
- macOS版対応(検討中)
GitHub
ソースコードは GitHub にて公開しています。
- 要件定義
- 設計書
- タスク管理
- 実装指示書
まで含めて管理しています。
おわりに
KiroBookmark は、
「技術記事を“知識”に変えるためのツール」として開発しています。
MVPは完成しましたが、ここからが本番です。
実際の利用を通じて、さらに磨き込んでいく予定です。
ご意見・フィードバックをいただけると嬉しいです。