This monorepo contains the NEWM web applications and shared packages.
- React - Library for web user interfaces
- Next.js - Library for building full stack React applications
- Redux Toolkit - Toolset for efficient Redux development
- RTK Query - Data fetching and caching tool
- Nx - Build system with monorepo support
The repo is split into apps and packages. Apps are deployable applications
and packages are libraries with shared functionality.
First install the NPM packages from the root directory:
npm install
The following commands will then run each app:
- NEWM Studio:
nx serve studio(runs athttp://localhost:3000) - NEWM Marketplace:
nx serve marketplace(runs athttp://localhost:4200) - NEWM Mobile Wallet Connector:
nx serve mobile-wallet-connector(runs athttp://localhost:4300)
This repo leverages Nx for building apps and packages.
You can utilize generators to create new apps and packages.
Run nx list to get a list of available plugins and whether they have
generators. Then run nx list <plugin-name> to see what generators are available.
Learn more about Nx generators in the docs.
To execute tasks with Nx use the following syntax:
nx <target> <project> <...options>
You can also run multiple targets:
nx run-many -t <target1> <target2>
..or add -p to filter specific projects
nx run-many -t <target1> <target2> -p <proj1> <proj2>
Targets can be defined in the package.json or projects.json. Learn
more in the docs.
The Nx Console extensions. It provides autocomplete support, a UI for exploring and running tasks & generators, and more.
The storybook for the elements package can be run using the command
nx storybook elements