Open1

Nx を利用したアプリケーション開発

doutoridoutori

monorepo を導入する際の選択肢

Monorepo を導入するための仕組みはいくつか選択肢があるが、Nx と NPM Workspaces (Yarn Workspaces), Lerna との大きな違いは、 パッケージの管理アプリケーション開発 のどちらに重きを置いているか。

Nx を利用すると、メジャーどころのフレームワークやライブラリは網羅されているのでセットアップを非常に楽に行うことができる。

  • linter
  • storybook
  • cypress
  • jest

Workspaces の作成

まずは、以下で任意のワークスペースを作成する。

npx create-nx-workspace MY_WORKSPACE

選択式でどのライブラリ、フレームワークを利用したアプリケーションを作成するか尋ねられるので、選択する。

nrwl チームがメンテしているプラグインの一覧が選択肢に表示されているだけで、選択肢にない場合でも有志の方々がプラグインを公開している。

その他のプラグインについてはこちらで一覧を確認することができます。
https://nx.dev/nx-community

選択したものによってアプリケーションの Scaffolding が行われる。
Schematics も同梱されている場合が多い。