Skip to content

IBM/template-node-loopback

Repository files navigation

IBM Cloud

IBM Cloud platform Apache 2

Loopback/Typescript Code Pattern

This is a template repository for a typescript-based Loopback micro-service for building complex APIs easily.

This app contains an opinionated set of components for modern web development, including:

Deploying

After you have created a new git repo from this git template, remember to rename the project. Edit package.json and change the default name to the name you used to create the template.

Make sure you are logged into the IBM Cloud using the IBM Cloud CLI and have access to you development cluster. If you are using OpenShift make sure you have logged into OpenShift CLI on the command line.

npm install --location=global @ibmgaragecloud/cloud-native-toolkit-cli

Ensure you have the Cloud-Native Toolkit installed in your cluster to make this method of pipeline registry quick and easy Cloud-Native Toolkit.

Use the IBM Garage for Cloud CLI to register the GIT Repo with Tekton or Jenkins, using --tekton flag if using Tekton:

oc sync <project> [--tekton]
oc pipeline

Local Development

Install dependencies

By default, dependencies were installed when this application was generated. Whenever dependencies in package.json are changed, run the following command:

npm install

To only install resolved dependencies in package-lock.json:

npm ci

Run the application

npm start

You can also run node . to skip the build step.

Open http://127.0.0.1:3001 in your browser.

Rebuild the project

To incrementally build the project:

npm run build

To force a full build by cleaning up cached artifacts:

npm run rebuild

Fix code style and formatting issues

npm run lint

To automatically fix such issues:

npm run lint:fix

Other useful commands

  • npm run migrate: Migrate database schemas for models
  • npm run openapi-spec: Generate OpenAPI spec into a file
  • npm run docker:build: Build a Docker image for this application
  • npm run docker:run: Run this application inside a Docker container

Tests

npm test

What's next

Please check out LoopBack 4 documentation to understand how you can continue to add features to this application.

LoopBack

License

This sample application is licensed under the Apache License, Version 2. Separate third-party code objects invoked within this code pattern are licensed by their respective providers pursuant to their own separate licenses. Contributions are subject to the Developer Certificate of Origin, Version 1.1 and the Apache License, Version 2.

Apache License FAQ