Skip to content

D-I-R-M/generator

 
 

Repository files navigation

AsyncAPI Generator

This is a Monorepo managed using Turborepo and contains the following package:

  1. Generator: This is a tool that you can use to generate whatever you want basing on the AsyncAPI specification file as an input.

  2. Nunjucks-filters: This library contains generator filters that can be reused across multiple templates, helping to avoid redundant work. These filters are designed specifically for Nunjucks templates and are included by default with the generator, so there's no need to add them to dependencies seprately.

npm npm

warning: This package doesn't support AsyncAPI 1.x anymore. We recommend to upgrade to the latest AsyncAPI version using the AsyncAPI converter (You can refer to installation guide). If you need to convert documents on the fly, you may use the Node.js or Go converters.

Overview

Generator is a tool that you can use to generate whatever you want basing on the AsyncAPI specification file as an input. For more information read the docs.

There is a large number of templates that are ready to use and are officially supported by the AsyncAPI Initiative.

List of official generator templates

Template Name Description Source code
@asyncapi/nodejs-template Generates Nodejs service that uses Hermes package click here
@asyncapi/nodejs-ws-template Generates Nodejs service that supports WebSockets protocol only click here
@asyncapi/java-template Generates Java JMS application click here
@asyncapi/java-spring-template Generates Java Spring service click here
@asyncapi/java-spring-cloud-stream-template Generates Java Spring Cloud Stream service click here
@asyncapi/python-paho-template Generates Python service that uses Paho library click here
@asyncapi/html-template Generates HTML documentation site click here
@asyncapi/markdown-template Generates documentation in Markdown file click here
@asyncapi/ts-nats-template Generates TypeScript NATS client click here
@asyncapi/go-watermill-template Generates Go client using Watermill click here
@asyncapi/dotnet-nats-template Generates .NET C# client using NATS click here
@asyncapi/php-template Generates PHP client using RabbitMQ click here
@asyncapi/dotnet-rabbitmq-template Generates .NET C# client using RabbitMQ click here

You can find above templates and the ones provided by the community in this list

Generator Filters

This library contains generator filters that can be reused across multiple templates, helping to avoid redundant work. These filters are designed specifically for Nunjucks templates and are included by default with the generator, so there's no need to add them to dependencies seprately.

This library consists of:

  • Custom filters. Check out API docs for complete list
  • Lodash-powered filters. For the list of all available filters check official docs

Contributing

For developement setup you can follow the detailed guide in Developement guide

Read CONTRIBUTING guide.

Contributors ✨

Thanks goes to these wonderful people (emoji key):

Fran MΓ©ndez
Fran MΓ©ndez

πŸ’¬ πŸ› πŸ’» πŸ“– πŸ€” 🚧 πŸ”Œ πŸ‘€ ⚠️ βœ…
Jonas Lagoni
Jonas Lagoni

πŸ’¬ πŸ› πŸ’» πŸ“– πŸ€” πŸ”Œ πŸ‘€ ⚠️
Lukasz Gornicki
Lukasz Gornicki

πŸ’¬ πŸ› πŸ“ πŸ’» πŸ“– πŸ€” 🚧 πŸ”Œ πŸ‘€ ⚠️ βœ… πŸš‡
Travis Reeder
Travis Reeder

πŸš‡ πŸ“–
Semen
Semen

πŸ› πŸ’» πŸ“– πŸ€” πŸ”Œ πŸ‘€ ⚠️
Waleed Ashraf
Waleed Ashraf

πŸ’» πŸ›
SebastiΓ‘n
SebastiΓ‘n

πŸ’»
Derk Muenchhausen
Derk Muenchhausen

πŸ’»
Ben Timby
Ben Timby

πŸ’»
Amanda  Shafack
Amanda Shafack

πŸ“–
Florence Njeri
Florence Njeri

πŸ“– πŸ‘€ πŸš‡ 🚧
Pratik Haldankar
Pratik Haldankar

πŸ“– πŸ‘€ 🚧 πŸ“’
swastik suvam singh
swastik suvam singh

πŸ’»
GavinZhengOI
GavinZhengOI

πŸ“–
lmgyuan
lmgyuan

πŸ“–
pierrick-boule
pierrick-boule

πŸ’» ⚠️ πŸ“–
Dhairya Majmudar
Dhairya Majmudar

πŸ›

This project follows the all-contributors specification. Contributions of any kind welcome!

About

Use your AsyncAPI definition to generate literally anything. Markdown documentation, Node.js code, HTML documentation, anything!

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • JavaScript 96.4%
  • Shell 2.0%
  • Handlebars 1.1%
  • Dockerfile 0.5%