メインコンテンツへスキップ

React Nativeマンスリー #5

·4分で読めます
Tomislav Tenodi
Speck 創設者

React Nativeの月例ミーティングは続きます!各チームの取り組みを見てみましょう。

Callstack

  • 私たちはReact NativeのCIに取り組んできました。最も重要なこととして、TravisからCircleに移行し、React NativeのCIパイプラインを1つに統一しました。
  • 私たちは、参加者の皆さんと一緒にオープンソースプロジェクトに多くのプルリクエストを送信する「Hacktoberfest - React Native edition」を開催しました。
  • 私たちはHaulの開発を続けています。先月、webpack 3のサポートを含む2つの新しいリリースを公開しました。今後はCRNAExpoのサポートを追加し、より良いHMRに取り組む予定です。ロードマップはissueトラッカーで公開されています。改善点やフィードバックがあれば、ぜひお知らせください!

Expo

  • Expo SDK 22(React Native 0.49を使用)をリリースし、それに対応するCRNAを更新しました。
    • 改善されたスプラッシュスクリーンAPI、基本的なARKitサポート、「DeviceMotion」API、iOS11でのSFAuthenticationSessionサポート、その他が含まれています。
  • あなたのSnackで複数のJavaScriptファイルを持てるようになり、画像やその他のアセットをエディタにドラッグ&ドロップするだけでアップロードできるようになりました。
  • iPhone Xのサポートを追加するためにreact-navigationにコントリビュートしてください。
  • Expoで大規模なアプリケーションを構築する際の課題に注力しています。例えば、
    • ステージング、プロダクション、および任意のチャネルへのデプロイに対するファーストクラスのサポート。チャネルは、ロールバックと特定のチャネルのアクティブなリリースの設定をサポートします。早期テスターをご希望の場合は、@expo_ioまでお知らせください。
    • また、スタンドアロンアプリのビルドインフラを改善し、OTA(Over The Air)でのアセット更新機能を維持しつつ、スタンドアロンアプリのビルドに画像やその他の非コードアセットをバンドルするサポートを追加する作業にも取り組んでいます。

Facebook

  • RTLサポートの改善
    • 方向を意識したスタイルを多数導入しています。
      • Position
        • (left|right) → (start|end)
      • Margin
        • margin(Left|Right) → margin(Start|End)
      • Padding
        • padding(Left|Right) → padding(Start|End)
      • Border
        • borderTop(Left|Right)Radius → borderTop(Start|End)Radius
        • borderBottom(Left|Right)Radius → borderBottom(Start|End)Radius
        • border(Left|Right)Width → border(Start|End)Width
        • border(Left|Right)Color → border(Start|End)Color
    • RTLでは、position、margin、padding、borderスタイルにおいて「left」と「right」の意味が入れ替わっていました。数ヶ月以内にこの動作を削除し、「left」が常に「左」を、「right」が常に「右」を意味するようにします。この破壊的変更はフラグの下に隠されています。React NativeコンポーネントでI18nManager.swapLeftAndRightInRTL(false)を使用して、これらにオプトインしてください。
  • 内部のネイティブモジュールにFlowタイピングを施し、それを使用してJavaでインターフェースを、ObjCでプロトコルを生成し、ネイティブ実装がこれらを実装する必要があるように作業を進めています。このコード生成は、早ければ来年にはオープンソース化されることを願っています。

Infinite Red

  • React Nativeや他のプロジェクトを支援するための新しいOSSツールです。詳細はこちら
  • 新しいボイラープレートリリース(コードネーム:Bowser)のためにIgniteを刷新しています。

Shoutem

  • Shoutemでの開発フローを改善しています。アプリの作成から最初のカスタム画面までのプロセスを効率化し、非常に簡単にすることで、新しいReact Native開発者にとっての障壁を低くしたいと考えています。新しい機能をテストするためにいくつかのワークショップを準備しました。また、新しいフローをサポートするためにShoutem CLIを改善しました。
  • Shoutem UIはいくつかのコンポーネントの改善とバグ修正が行われました。また、最新のReact Nativeバージョンとの互換性も確認しました。
  • Shoutemプラットフォームはいくつかの notable なアップデートを受け、オープンソース拡張機能プロジェクトの一部として新しい統合が利用可能になりました。他の開発者によるShoutem拡張機能の活発な開発に大変興奮しています。私たちは積極的に連絡を取り、彼らの拡張機能についてアドバイスとガイダンスを提供しています。

次のセッション

次回のセッションは2017年12月6日水曜日に予定されています。会議の成果を改善する方法について何かご提案があれば、お気軽にTwitterで私に連絡してください。