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