RORK LABEN
BUILD — Rork Max はクラウド上の実機 Mac に Xcode と iOS SDK を載せ、SwiftUI を書き、ビルドし、エラーを読んで直す反復を回します。コードを吐いて終わりではない点が生成物の質に効いていますNATIVE — 生成されるのは React Native ではなく純粋な Swift / SwiftUI です。AR や Metal、ウィジェットなど React Native からは届かない機能に手が届くことが、他ビルダーとの実質的な差になりますPLATFORMS — 対応は iPhone・iPad・Apple Watch・Apple TV・Vision Pro に加えて iMessage まで含みます。ウォッチや拡張から入る設計を試すのに向いていますCOMPANION — Rork Companion により、有料の Apple Developer アカウントなしで生成したアプリを実機の iPhone で確認できます。最初の一本を試す段階の障壁が一段下がりましたPRICING — 無料で開始でき有料プランは月額25ドルから、Rork Max は月額200ドルの Max プランです。回収できる本数と規模を先に見積もっておく価値がありますDEADLINE — Google Play は2026年8月31日以降、新規アプリと更新の双方に対象 API レベル36 以上を要求します。残り10日で、生成物の targetSdkVersion は自分で確認が必要ですBUILD — Rork Max はクラウド上の実機 Mac に Xcode と iOS SDK を載せ、SwiftUI を書き、ビルドし、エラーを読んで直す反復を回します。コードを吐いて終わりではない点が生成物の質に効いていますNATIVE — 生成されるのは React Native ではなく純粋な Swift / SwiftUI です。AR や Metal、ウィジェットなど React Native からは届かない機能に手が届くことが、他ビルダーとの実質的な差になりますPLATFORMS — 対応は iPhone・iPad・Apple Watch・Apple TV・Vision Pro に加えて iMessage まで含みます。ウォッチや拡張から入る設計を試すのに向いていますCOMPANION — Rork Companion により、有料の Apple Developer アカウントなしで生成したアプリを実機の iPhone で確認できます。最初の一本を試す段階の障壁が一段下がりましたPRICING — 無料で開始でき有料プランは月額25ドルから、Rork Max は月額200ドルの Max プランです。回収できる本数と規模を先に見積もっておく価値がありますDEADLINE — Google Play は2026年8月31日以降、新規アプリと更新の双方に対象 API レベル36 以上を要求します。残り10日で、生成物の targetSdkVersion は自分で確認が必要です
記事一覧/開発ツール
開発ツール/2026-06-15中級

再生成のたびに色と余白が崩れる問題を、デザイントークンの単一情報源で止める

Rorkに画面を再生成させるたびにボタンの色や余白が少しずつ変わる問題を、デザイントークンの単一情報源で止める設計です。トークンを1か所に固定して生成物に参照させる方法、CIでの逸脱検出、複数アプリで一貫性を保つ注意点まで、本番で効いた数値とともにまとめます。

Rork539デザイントークン2Expo175デザインシステム5保守性2

プレミアム記事

ある日、リリース済みのアプリのスクリーンショットを並べて見ていて、妙な違和感を覚えました。同じアプリの中なのに、設定画面のボタンだけ角丸が一回り大きいのです。原因をたどると、その画面だけ前の週に Rork で一度作り直していました。生成のたびに、角丸の半径が 12 から 16 へ、主要色の青がほんの少し明るいほうへ、と静かにずれていたのです。

一画面なら手で直せます。けれど個人開発で複数のアプリを抱えていると、この「じわじわ」が積み重なって、いつの間にかブランドの輪郭がぼやけます。生成 AI は指示の外側を埋めるのが得意で、色や余白のような「言わなかった部分」を毎回それらしく補完します。その補完こそが、再生成のたびの揺れの正体でした。

なぜ生成物の見た目は毎回ずれるのか

Rork が生成する Expo アプリのスタイルは、多くの場合コンポーネントの中に直接数値で書き込まれます。borderRadius: 12padding: 16color: "#2563EB" のような形です。これらはどの画面にも散らばっていて、再生成のときに AI が文脈から「だいたいこのくらい」と推定し直します。指示に明示されていない数値は、毎回わずかに違う値で再構成されます。

つまり揺れの根本は、見た目の決定権が無数のコンポーネントに分散していることです。決定権が散らばっている限り、再生成は揺れます。直す方向は1つで、見た目の決定を1か所に集めることです。

トークンを単一情報源にまとめる

最初の一歩は、色・余白・角丸・タイポグラフィといった「デザインの語彙」を、1つのファイルに固定することです。このファイルだけは AI に再生成させず、人間が管理します。

// tokens.ts — このアプリの見た目を決める唯一の場所
// AI に再生成させない。変更は必ずここを手で編集する
export const tokens = {
  color: {
    brand: "#2563EB",
    brandPressed: "#1D4ED8",
    bg: "#FFFFFF",
    text: "#0F172A",
    textMuted: "#64748B",
    danger: "#DC2626",
  },
  radius: { sm: 8, md: 12, lg: 16, pill: 999 },
  space: { xs: 4, sm: 8, md: 12, lg: 16, xl: 24, xxl: 32 },
  font: { body: 16, title: 22, caption: 13 },
} as const;
 
export type Tokens = typeof tokens;

コンポーネント側は、もう生の数値を持ちません。必ずトークンを経由します。

// PrimaryButton.tsx — 生の数値を一切書かない。すべてトークン参照
import { Pressable, Text, StyleSheet } from "react-native";
import { tokens } from "../tokens";
 
export function PrimaryButton({ label, onPress }: {
  label: string; onPress: () => void;
}) {
  return (
    <Pressable onPress={onPress} style={styles.btn}>
      <Text style={styles.label}>{label}</Text>
    </Pressable>
  );
}
 
const styles = StyleSheet.create({
  btn: {
    backgroundColor: tokens.color.brand,
    borderRadius: tokens.radius.md,
    paddingVertical: tokens.space.md,
    paddingHorizontal: tokens.space.lg,
    alignItems: "center",
  },
  label: { color: "#FFFFFF", fontSize: tokens.font.body, fontWeight: "600" },
});

これで「青ボタンの角丸を 12 にする」という決定は、世界に1か所しか存在しなくなります。再生成が borderRadius を勝手に推定する余地が消えます。

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

この記事の続きを読む

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

この記事で得られること
再生成で色・余白・角丸がじわじわ変わる原因と、トークン単一情報源で止める設計が手に入ります
生成 AI に毎回トークンを参照させるためのプロンプト規約と、逸脱を検出する CI スクリプトを持ち帰れます
6本のアプリでブランドの一貫性を保ちながら、画面の再生成スピードを落とさない運用基準がわかります
Stripe による安全な決済 · いつでもキャンセル可能

この記事を購入する

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

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

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

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

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

関連記事

開発ツール2026-03-17
Rork × Google Stitch — デザインから React Native アプリまで AI で一貫開発
Google Stitchで生成したUIデザインをRork Maxへ取り込み、React Nativeアプリを最短で仕上げるワークフローです。基本の連携手順、MCPによる効率化、タスク管理アプリでの実践例、効果的なケースと注意点までを一通り解説します。デザインから実装への変換コストを下げます。
開発ツール2026-08-21
生成ループが緑を返した後に、私が手元で回している4つの受け入れ検査
ビルドが成功しても出荷できない状態は実在します。AI がビルドを反復する構成で見落とされやすい4点を、成果物そのものを走査する検査スクリプトとして手元に置く方法をまとめました。
開発ツール2026-08-20
ベータ SDK でビルドしたアプリは、TestFlight には配れても審査には出せません
ベータ版の Xcode でビルドしたアプリは TestFlight には配布できますが、App Store の審査には提出できません。手元のビルドがどの SDK で作られたかを確認する方法と、eas.json で提出用ビルドを守る設定をまとめました。
📚RECOMMENDED BOOKS
大規模言語モデル入門
山田育矢
LLM開発
生成AIプロンプトエンジニアリング入門
我妻幸長
プロンプト
Claude CodeによるAI駆動開発入門
平川知秀
AI駆動開発
※ アフィリエイトリンクを含みます
もっと見る →