すべての記事
「、」が行頭に落ちた — Rork が組んだ名言カードと日本語の禁則処理
React Native の Text は日本語の行頭禁則を保証しません。実測した違反率、WORD JOINER による事前結合の実装、onTextLayout での自動監査、Rork Max(SwiftUI)との挙動差までまとめました。
オンデバイス画像認識、React Native の TFLite か Rork Max の Core ML か — 同じ題材で両方組んで決めた選び方
端末内で画像を分類する機能を、React Native に TFLite を積んで作るか、Rork Max のネイティブ Swift と Core ML で作るか。同じ題材を両方で組み、端から端までの内訳を測って選び方を整理しました。
転送量が半分になったのに、体感は速くならなかった — 壁紙アプリの画像フォーマットとデコード費用
AVIF に寄せれば配信コストは下がります。けれど端末のデコード時間まで測ると話が変わりました。Accept ネゴシエーションとマニフェスト方式の分岐、端末別フォールバック、段階移行の順序を実測値とともに整理しました。
Rorkの癒しアプリにスリープタイマーを付けたら、フェードアウトが実際の音とズレた話
Rorkが生成するスリープタイマーは、壁時計のsetIntervalで音量を下げます。数値上は30分でも、実際の音はもっと早く消えたり不自然に途切れたりします。フェードを再生位置で駆動し直す実装と、対数カーブ・停止処理・画面ロック時の限界までを実運用の視点でまとめました。
壁紙を長押しして、プレビューと保存メニューを出す — Rork の Expo アプリで context menu を組む
壁紙ギャラリーのカードを長押ししても何も起きない。iOS利用者はプレビュー付きのメニューを期待します。Pressableだけでは届かない理由から、zeegoでのネイティブcontext menu実装、スクロールとの競合解消、保存・共有アクション、Android向けの自前フォールバックまで、動くコードでまとめます。
AI再生成に壊されない設計 — Rork の生成コードと手書きロジックを分ける境界の引き方
Rork へ追加指示を出すたびに手書きのロジックが消える。プロンプトで守るのは対症療法です。生成コードと自分の所有コードを層で分け、再生成が届かない境界を設計で引く方法を、Zustand と service 層の実装例つきでお伝えします。
Rork が生成した fetch コードに、Zod の検証境界を1枚だけ挟む
Rork が生成したネットワークコードは、レスポンスの形を暗黙に信頼します。APIが変わると画面は静かに真っ白になります。生成UIとネットワークの間にZodのparse層を1枚だけ差し込み、壊れ方を予測可能にする実装を、実運用の数値とともに紹介します。
WebViewのpostMessageは投げたら終わり — 相関IDで要求と応答を結ぶブリッジを設計する
WebView と React Native の postMessage は片道通信で、送った処理が成功したのか分かりません。相関IDと応答を組み込んだ要求・応答型ブリッジを、動く TypeScript コードで設計します。
「{n}件」で多言語が崩れる — CLDR複数形カテゴリとIntl.PluralRulesで数量表現を設計する
「1なら単数、それ以外は複数」という前提はロシア語やアラビア語で崩れます。CLDRの複数形カテゴリを地図として持ち、Intl.PluralRulesとi18nextで数量表現を正しく出すための実装を、個人開発の壁紙アプリを多言語化した経験からまとめました。
Detox と Maestro の E2E が全部緑なのに本番でクラッシュが出ていたとき — 自動リトライが握りつぶした不安定テストをフレーク率で炙り出す運用メモ
E2Eが全部緑なのに本番クラッシュが出る。原因は自動リトライがフレークを握りつぶしていたこと。テスト単位でフレーク率を計測し、隔離とリトライ予算で本物の失敗だけを残す運用メモです。
HealthKitの差分同期でデータを取りこぼす — HKAnchoredObjectQueryのアンカーを設計する
HealthKitの差分同期で歩数や睡眠が二重に数えられたり欠けたりする原因は、HKQueryAnchorの永続化設計にあります。newAnchorとdeletedObjectsを正しく扱い、再インストールやバックグラウンド更新をまたいでも整合するローカル取り込みの実装を、動くSwiftコードでまとめました。
Rork Max で届かない領域はどこか — ネイティブ生成の現実的な線引き
Rork Max のネイティブ Swift 生成が得意なことと、まだ人の手が要ることを、個人開発の実感に沿って正直に線引きします。過度な期待でも過小評価でもない、現実的な使いどころの話です。