Create a Loopback 4 application within your Nx Monorepo. This is more of a proof of concept, and may not be production ready. My hope is that Nrwl adds official support for Loopback within Nx. Pull requests are more than welcome.
With Yarn:
yarn add nx-loopback-next
With NPM:
npm i nx-loopback-next --save
Github:
npm i https://github.com/codephobia/nx-loopback-next.git --save
And then you must build the contents in your node_modules/nx-loopback-next with yarn build
.
With Nrwl CLI:
nx g nx-loopback-next:app
With Angular CLI:
ng g nx-loopback-next:app
Initializes the Nx monorepo to have dependencies for Loopback 4. This is a hidden schematic and should not ever need to be called.
Name | Type | Required | Description |
---|---|---|---|
skipFormat | boolean | false | Not actually being used yet |
Generates a new Loopback 4 application.
Name | Type | Required | Description |
---|---|---|---|
name | string | yes | Name of the new application |
tags | string | no | Comma separated tags used for linting |
skipFormat | boolean | false | Not actually being used yet |
Builds the application using lb-tsc.
With Nx CLI:
nx build application-name
With Angular CLI:
ng build application-name
Name | Type | Default | Required | Description |
---|---|---|---|---|
appPath | string | yes | Path the application. ie. apps/backend | |
tsConfig | string | yes | Path to the tsConfig.json file for Loopback | |
clean | boolean | false | no | Delete dist files prior to build |
Runs the build application with Node.js.
With Nx CLI:
nx serve application-name
With Angular CLI:
ng serve application-name
Name | Type | Default | Required | Description |
---|---|---|---|---|
appPath | string | yes | Path the application. ie. apps/backend | |
NODE_ENV | string | development | no | Node environment for the application |
args | string[] | [] | no | Arguments to add to the command |
buildTarget | string | yes | The Nx build command for the new application | |
runOnly | boolean | true | no | Skip the build before running |
clean | boolean | false | no | Delete dist files prior to build |
I would like to see the following features added to the project.
- Build with watch
- Linting
- Unit tests
I couldn't have built this without the following resources and wanted to make sure to note them:
-
The official Nx github is a great resource for seeing how the team at Nrwl are building schematics and builders for Nx. https://github.com/nrwl/nx
-
Abdooly wrote a custom builder for using ts-node. That repo was a massive help in understanding how to make a builder without using webpack. https://github.com/abdoolly/ts-node-builder