RORK LABEN
SDK58 — Expo SDK 58 のベータが始まりました。React Native 0.88 の RC を同梱し、ベータ期間は3〜4週間と公式に書かれています11/01 — Google Play の対象 API レベル、延長を申請した場合の配信期限は11月1日です。残り44日ですEASENV — ローカルビルドに渡したはずの秘密が、中身ではなく変数名の文字列のまま届く、という報告が長く開いたままですNEW — 推奨された移行先が、すでに停止していました。廃止表を74行突き合わせた記録ですUISCENE — iOS 27 では新しい画面ライフサイクルが必須です。SDK 57 では自分で有効にする設定で、既定になるのは 58 からですCREDIT — 「AI のエラーには消費しない」がどこまでを指すのかは、同じ修正を何度か頼んだ日の記録を取ると見えてきますSDK58 — Expo SDK 58 のベータが始まりました。React Native 0.88 の RC を同梱し、ベータ期間は3〜4週間と公式に書かれています11/01 — Google Play の対象 API レベル、延長を申請した場合の配信期限は11月1日です。残り44日ですEASENV — ローカルビルドに渡したはずの秘密が、中身ではなく変数名の文字列のまま届く、という報告が長く開いたままですNEW — 推奨された移行先が、すでに停止していました。廃止表を74行突き合わせた記録ですUISCENE — iOS 27 では新しい画面ライフサイクルが必須です。SDK 57 では自分で有効にする設定で、既定になるのは 58 からですCREDIT — 「AI のエラーには消費しない」がどこまでを指すのかは、同じ修正を何度か頼んだ日の記録を取ると見えてきます
記事一覧/Rork入門
Rork入門/2026-06-13中級

Rork アプリの空状態を設計しきる — 初回・削除後・通信エラーを1つのコンポーネントで支える

Rork に説明文を渡してアプリを作ると、データがある前提の画面だけが整いがちです。初回・削除後・通信エラーの3つの空状態を、再利用できる1つのコンポーネント・リトライ設計・読み上げ対応・効果計測まで含めて作り込む実装ガイドです。

Rork568UXデザイン3ノーコード41アプリ開発76オンボーディング10

プレミアム記事

Rork で作ったアプリを自分のスマホに入れて最初に開いたとき、リストが一行も並んでいない真っ白な画面に少し戸惑った——という経験はないでしょうか。説明文(プロンプト)から生成されるアプリは、「データが入っている状態」の画面は驚くほど綺麗に仕上がります。一方で、まだ何もない状態の画面は、AI が指示されない限りほとんど作り込んでくれません。

この「何もない画面」は専門的にはエンプティステート(空状態)と呼ばれます。地味ですが、ユーザーがアプリを初めて開いた瞬間に必ず通る画面でもあります。ここが空白のままだと、せっかくのアプリが「壊れているのかな」と誤解され、そのまま離脱につながります。私自身、個人開発でいくつものアプリを App Store と Google Play に出してきましたが、初日の離脱がいちばん減るのは、実はこの空っぽの画面を丁寧に整えたときでした。

空状態を「とりあえず文字を置く」レベルで終わらせると、もったいない画面になってしまいます。ここからは、初回・削除後・通信エラーの3つを1つの再利用コンポーネントで支え、リトライ・読み上げ対応・効果計測まで作り込んでいきます。Rork に任せきりにせず、生成されたコードのどこを直せば質が変わるのか、具体的な手の入れ方を順に見ていきます。

空状態は1種類ではない、という前提

エンプティステートを「データがないときの画面」とひとくくりにすると、設計を見誤ります。同じ空白でも、ユーザーが置かれている状況は3つに分かれていて、それぞれ伝えるべきメッセージが違うからです。

ひとつめは初回の空状態です。アプリをインストールして初めて開いた、まだ何も登録していない状態。ここでユーザーが知りたいのは「自分は次に何をすればいいのか」です。

ふたつめはデータを削除しきった後の空状態です。タスクを全部完了した、保存したアイテムを全部消した、という状況。これは初回とは気分がまったく違います。ユーザーは使い方を分かっているので、操作の説明は不要で、「やりきった」という達成感や、次の小さな一歩を添えるほうが合います。

みっつめは通信エラーや読み込み失敗による空状態です。本来はデータがあるのに、取得に失敗して空に見えている状態。ここで「まだ何もありません」と表示してしまうと、ユーザーは自分のデータが消えたと勘違いします。この場合は「うまく読み込めませんでした。もう一度お試しください」という、再試行を促すメッセージが正解です。

この3つを分けて考えるだけで、空っぽの画面の印象は大きく変わります。そして実装上は、この3つに「読み込み中」を加えた4つの分岐を、画面ごとにバラバラに書くのではなく、1か所にまとめておくのが後々ずっと楽になります。

Rork に空状態を作ってもらうためのプロンプトの書き方

Rork は説明文に書かれていないものは基本的に作りません。逆に言えば、空状態を明示的に依頼すれば、ちゃんと画面を用意してくれます。生成のときに次のような一文を添えるのが効果的です。

リスト画面には、項目が0件のときに表示する初回向けの空状態を作ってください。
中央にやわらかいイラストかアイコン、「まだ◯◯がありません」という見出し、
一行の補足説明、そして「最初の◯◯を追加」というボタンを置いてください。
削除しきった後・通信エラー時はそれぞれ別の見出しと文言にし、
これらをまとめて1つの再利用コンポーネントとして実装してください。

ポイントは、空状態に「次の行動を促すボタン」を必ず含めるよう指示することと、3つの状態を1つのコンポーネントにまとめてほしいと明示することです。空状態は単なるお知らせではなく、ユーザーを最初の操作へ導く入り口だからです。すでにアプリを生成済みでも、Rork のチャットに「タスクが0件のときの画面が寂しいので、初回・削除後・エラーの3種を1コンポーネントにまとめて追加してください」と後から頼めば、その画面だけを追加してくれます。

ここまでお読みいただきありがとうございます。

この記事の続きを読む

この先には、実装コードやベンチマーク結果など、実務でお役に立てる内容をご用意しています。このサイトは広告を掲載しておらず、サーバーや開発にかかる費用はメンバーの皆様のご支援で成り立っています。もしお役に立てていましたら、ご支援いただけますと大変ありがたいです。

この記事で得られること
初回・削除後・通信エラーの3状態を1つのコンポーネントで切り替える再利用設計と、そのままRorkに渡せるプロンプト
通信エラーの指数バックオフ付きリトライと、ローディングのスケルトンで空状態のちらつきを防ぐ実装
空状態に読み上げ対応を加える方法と、どの空状態で離脱しているかを計測して文言を改善する手順
Stripe による安全な決済 · いつでもキャンセル可能

この記事を購入する

この先の内容をすべてお読みいただけます。一度のご購入で、いつでも何度でもアクセスできます。このサイトは広告を掲載しておらず、皆さまのご支援がサーバー費用などの運営を支えています。

または
メンバーシップなら全記事が読み放題 →
シェア

お読みいただきありがとうございます

Rork Lab は広告なしで運営しており、サーバー費用などの運営コストはメンバーシップのご支援で賄っています。実装コード・ベンチマーク・本番設計パターンなど、実務でお役立ていただける記事を毎日更新しています。もし読んでよかったと感じていただけましたら、ぜひご覧ください。

  • コピー&ペーストで使える実装コード付き
  • 毎日新しい上級ガイドを追加
  • ¥580/月 または ¥2,480 の永久アクセス
メンバーシップを見る →

関連記事

Rork 入門2026-04-23
Rorkで作ったアプリに後から機能を追加する — AIを迷わせない指示の組み立て方
Rorkで作ったアプリに後から機能を追加すると、AIが既存コードを壊してしまうことがあります。追加箇所を正確な住所で指定する、既存コードに触れない制約を明示する、1回の指示で1機能に絞るなど、何度も失敗して辿り着いた指示の組み立て方を紹介します。
Rork 入門2026-04-20
Rorkで育児記録アプリを1時間で作る — 子どもの成長を残すアプリ開発入門
Rorkで育児記録アプリを1時間で作るチュートリアルです。写真、身長体重のグラフ、日記メモを備えたアプリをプログラミングなしで組み立て、入力するプロンプト、生成後に確認する3つのポイント、クラウド保存やApp Store公開の考え方まで解説します。
Rork 入門2026-04-19
Rorkで服薬管理アプリを作る — 毎日の薬を飲み忘れないための仕組みをAIで実装する
Rorkで服薬管理アプリを作る手順を解説します。薬の登録画面、飲んだチェックのロジック、リマインダー通知、服用履歴のカレンダー表示までをプログラミング知識なしで実装し、実際に家族に使ってもらって得た感想と改善点も紹介します。薬の種類が増えたときの工夫も扱います。
📚RECOMMENDED BOOKS
大規模言語モデル入門
山田育矢
LLM開発
生成AIプロンプトエンジニアリング入門
我妻幸長
プロンプト
Claude CodeによるAI駆動開発入門
平川知秀
AI駆動開発
※ アフィリエイトリンクを含みます