@asyncapi/ts-nats-template

v0.10.3
NATS TypeScript/Node.js template for the AsyncAPI generator.
asyncapi generator ts nats template

TypeScript/Node.js NATS template

All Contributors

This is a TypeScript/Node.js NATS template for the AsyncAPI generator.

This template is for generating a TypeScript/Node.js wrapper for the NATS client based on your AsyncAPI document. The template is based on the nats.js library and can be used as both a TypeScript and Node.js library.

Have you found a bug or have an idea for improvement? Feel free to contribute! See the contribution guidelines for how to do so.

How to use

Example use-cases can be found under examples.

Information about the generated files and a description can be found under the documentation folder.

Requirements

  • @asyncapi/generator < v2.0.0 >v1.1.1

Install the generator through npm or run it from docker official installer.

Template Parameters

These are the available template parameters:

Parameter Type Description
generateTestClient Boolean Use this parameter to generate the test client. Add the following to the CLI when generating your code --param "generateTestClient=true"
promisifyReplyCallback Boolean Use this parameter to change from the default regular callback when using the request operation. Add the following to the CLI when generating your code --param "promisifyReplyCallback=true"

Features

  • Supports wildcard channels. AsyncAPI describes the channel path to be defined as RFC 6570 URI. So a channel containing a wildcard needs to be defined with parameters such as smartylighting/streetlights/{wildcard}.
  • Supports test/mirror client for testing or other useful scenarios.
  • This template can be used as a NodeJS library.
  • Generates payload models using the AsyncAPI model generation library.

Restrictions

  • Empty objects are not supported, use null types instead.

Contributing

Before contributing, please read the CONTRIBUTING document.

Contributors ✨

Thanks goes to these wonderful people (emoji key):


Jonas Lagoni

πŸ› 🚧 πŸ’» πŸ“– πŸ€” πŸ’¬ ⚠️

Maciej UrbaΕ„czyk

πŸ‘€

Lukasz Gornicki

πŸš‡ πŸ‘€

Fran MΓ©ndez

πŸ‘€

Colin Sullivan

πŸ‘€

Alberto Ricart

πŸ‘€

Alejandra Quetzalli

πŸ‘€
npm i @asyncapi/ts-nats-template

Metadata

Downloads