1. はじめに:個人開発の「作ったのに使わなくなる問題」
個人開発で「こんなツールがあったら便利かも!」と意気込んでWebアプリを作ったものの、リリースから数週間後には開発者である自分自身すら使わなくなっていた…… という経験はありませんか?
この現象、機能に不満があるわけではなく、根本的な原因は 「使うまでの導線の摩擦(フリクション)」 にあります。
- スマホのブラウザを開く
- ブックマークや履歴から探す(またはURLを叩く)
- ログインセッションが切れていたら再ログインする
- 画面をポチポチ操作してフォームに入力する
日常の中で「ちょっとメモしたい」「サクッと記録したい」「サクッとトリガーしたい」というアクションに対して、この数タップ・数秒の摩擦があるだけで、人間の脳は無意識にアプリを開くのをやめてしまいます。
そこで激推ししたいのが、「iPhoneのショートカットアプリを自作Webアプリのフロントエンド(UI)にする」 という運用術です。
2. 設計思想:「複雑なUIが不要なものは、全部ショートカットでいい」
スマホから手軽に使いたいからといって、SwiftやFlutterでネイティブアプリを作り、App Storeの審査を通して、年間1万円以上のApple Developer Program代を払い続けるのは個人開発にとって重すぎます。
iPhoneのショートカットアプリを使えば、ホーム画面アイコン、ウィジェット、背面タップ、アクションボタン、Siri、共有シート など、iOSの強力なOS機能を自作APIのトリガーとしてフル活用できます。

ここで重要なのが、「入出力のインターフェースだけスマホに持たせる」 という割り切りです。
画面が必要なら「Notion」や「Discord」に任せればいい
「でも、登録したデータの一覧を見たり、検索したりするUIも必要では?」と思うかもしれません。
その場合は、入力(ショートカット)と閲覧(既存サービス)を完全に分離する のがおすすめです。
-
例①:クイック支出・アイデアメモ
- 入力: ショートカットから金額やテキストを1タップ送信
- 閲覧・集計: Notionのデータベースやスプレッドシートで確認
-
例②:気になった記事・動画のストック
- 入力: Safariの共有シートからショートカットで自作APIにPOST
- 閲覧・通知: DiscordのプライベートサーバーにWebhookで投げてスレッド管理
-
例③:複雑な管理画面
- 日常のデータ投入はすべてショートカットで完結させ、週末に集計結果を眺める時だけPC用のシンプルなWeb管理画面を開く
「日常で最も頻度の高いアクション」だけをショートカット化して摩擦をゼロにするのがポイントです。
3. 私の実践例:ラズパイ5 × FastAPI × Tailscale の運用
現在私が運用している構成は、自宅に置いた Raspberry Pi 5 上に FastAPI でAPIサーバーを立て、Tailscale でセキュアに接続するスタイルです。
- FastAPI: 軽量かつ高速にエンドポイントを作成。Pythonの豊富なライブラリで何でもできる。
-
Tailscale: VPNを張ることで、ルーターのポート開放を一切せずに、外出先の4G/5G回線からでも
http://raspberrypi:8000/...に安全にアクセス可能。
この構成で実際によく使っている実例を2つ紹介します。
実例①:レシートプリンタからの買い物リスト出力
買いたいものリストを物理的な紙で出力する仕組みです。
- 出かける前にショートカットをワンタップ
- FastAPIが買い物リストの最新データを取得・整形
- ラズパイにUSB接続されたサーマルプリンタ(レシートプリンタ)から、ジーッと紙の買い物リストが印字されて出てくる
実例②:vlog素材のワンタップ録画&保存
日々のvlogを作るための短いクリップ動画を撮る仕組みです。
- ホーム画面のショートカットをタップ(またはアクションボタン長押し)
- iPhoneのカメラが即座に起動し、動画を撮影
- 撮影が終わると「動画タイトル」の入力ダイアログが1行だけ出る
- 入力後、バックグラウンドでラズパイのFastAPIエンドポイントに動画ファイルとタイトルがPOSTされ、大容量ストレージに自動保存
【体験の良さ】
「カメラで撮る → 写真アプリから共有 → クラウドにアップロード → PCで整理」という一連の面倒なフローが完全に消滅しました。思い立った瞬間に撮るだけで、ラズパイ側に素材が蓄積されていきます。

4. 【要注意】ショートカット開発の罠と乗り越え方
ここまでショートカットの良さを語ってきましたが、実際に作ってみると想像以上に癖が強く、落とし穴が多い です。
罠:「誰でもできる」を目指した結果、「誰にもできない」UIになっている
Appleのショートカットは一見ノーコードで直感的に組めそうに見えますが、プログラミング経験者ほど逆に混乱します。
- 変数のスコープや型が視覚的にわかりにくい
- 暗黙の型変換や意図しないデータのラップが行われる
- 複雑な
if分岐やループを組もうとするとブロックが崩壊する・バグっぽい挙動をする
「誰でも簡単に自動化できる」を目指した結果、「プログラマにとっても初見殺しで誰もメンテできない」 という状態に陥りがちです。最初は慣れが必要です。
最強のデバッグ術:「コンテンツを表示」アクションを使え
ショートカットで一番困るのが「どこでエラーが起きているか全くわからない」という点です。
これを解決する唯一にして最強の武器が、「コンテンツを表示」アクション です。
[URLの内容を取得](APIリクエスト)
↓
[コンテンツを表示](←★ここに挟む!)
↓
(後続の処理...)
コードでいう console.log() や print() と全く同じです。
「APIから返ってきたレスポンスは本当に意図したJSONか?」「変数の値はどうなっているか?」を調べるため、怪しい箇所の直後に「コンテンツを表示」を挟んで画面上にポップアップさせる。これだけでデバッグ効率があがります。
鉄則:ロジックはAPI側に全振りし、ショートカットはシンプルなインターフェースに徹する
ショートカットの罠を踏まないための最大の秘訣は、ショートカット側で賢い処理を一切しないこと です。
- ❌ 悪い例: ショートカット側でJSONを細かくパースして、複雑な条件分岐を行い、文字列を正規表現で整形して……
- ⭕️ 良い例: ショートカットは「入力を受け取ってそのままAPIに投げる」「返ってきた結果を通知する」だけの “ただの橋渡し” に徹する。
複雑なロジック・バリデーション・データ加工はすべてFastAPI(バックエンド)側に任せましょう。コードで書いた方が圧倒的にデバッグしやすく、ショートカット自体もシンプルで壊れにくくなります。
5. まとめ:導線の摩擦をなくして、作ったものを生活の一部にしよう
個人開発のWebサービスを「作っただけで終わらせない」ためには、アクセスするまでの摩擦をどれだけ削れるか が勝負です。
- 複雑な画面がいらないなら、Webフロントエンドすら作らなくていい
- スマホの入力・トリガーはiPhoneショートカットに任せる
- バックエンドは使い慣れたフレームワーク(FastAPIなど)でいつも通り組む
- 詳細な閲覧や編集が必要になったら、NotionやDiscordなどの既存ツールを組み合わせる
「せっかく作ったのに最近使ってないな……」という自作APIやアイデアがある方は、ぜひショートカットを生やしてホーム画面やアクションボタンに配置してみてください。驚くほど自然に、日常のツールとして溶け込んでくれるはずです!