「、」が行頭に落ちた — 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 の Expo アプリで context menu を組む
壁紙ギャラリーのカードを長押ししても何も起きない。iOS利用者はプレビュー付きのメニューを期待します。Pressableだけでは届かない理由から、zeegoでのネイティブcontext menu実装、スクロールとの競合解消、保存・共有アクション、Android向けの自前フォールバックまで、動くコードでまとめます。
取り消しを押しても戻らない——編集履歴を安全に巻き戻すUndo/Redoの設計
状態を丸ごと保存するUndoは、数十手でメモリを圧迫します。コマンド履歴とスナップショットを使い分け、微調整の合体・上限・セッション跨ぎの永続化まで備えたUndo/Redoを、動くTypeScriptで設計します。
React Compiler を Expo に入れて、手書き memo を 41 箇所消しました
Rork が生成した React Native 画面に React Compiler を導入し、再レンダリング回数を Profiler で実測しました。手書き memo/useCallback の削除判断、効かない箇所の見分け方、CI での回帰検知までをまとめています。
クライアントに置いた鍵は公開情報 — Rork 生成アプリの秘密境界とローテーション手順
生成された Expo アプリの .ipa を展開すると、環境変数がそのまま文字列として現れます。鍵を3層に分類し、置けないものをプロキシへ逃がし、漏れた前提のローテーション手順書を用意するまでの設計をまとめます。
Amplitude のファネルが一晩で改善したように見えたとき — イベントのスキーマ崩れを自己監査で炙り出す運用メモ
Rork で作ったアプリの Amplitude ファネルで、課金転換率が8%から19%へ跳ね上がったのに売上が動かない。原因はプロパティ名の崩れによる二重計上でした。イベント契約と実行時バリデータで崩れを計測し、段階的に締め直した運用メモです。
生成のたびに崩れるレイヤ境界を、CIで守る — Rork製Expoアプリの依存ルール機械化
Rorkが生成したExpoアプリを長く運用すると、画面から直接APIクライアントを叩くimportが静かに増えていきます。ESLintのゾーン制約とdependency-cruiserで依存の向きを機械化し、CIで落とすまでの実装を残します。
SVGアイコンがExpo Goでは出るのにビルドで消える — Rork製アプリでSVGを確実に表示する
Rork や Expo のアプリで .svg ファイルを import してもアイコンが表示されない、色が反映されないという問題を、metro.config.js と react-native-svg-transformer の設定、currentColor によるテーマ追従まで実際のコードで解決します。
Reanimatedで作る、滑るインジケーター付きセグメントコントロール
標準のセグメントコントロールがAndroidで浮いて見える問題を、Reanimatedの自作コンポーネントで解決します。幅を実測して指標を滑らせる完全なコードと、UIスレッド駆動・アクセシビリティ・RTL対応までを実装メモとしてまとめました。
端末の空き容量が尽きたとき、アプリは何を守るか
書き込み失敗を前提に設計するExpo/React Nativeアプリの耐性パターン。空き容量予算・LRU退避・データ保護優先度・無言失敗を防ぐテレメトリまで、6本の壁紙アプリの運用から得た実装をまとめました。