# The Open Source Community Tooling Built on AsyncAPI

**Author:** kinlane  
**Canonical:** https://apievangelist.com/2020/06/11/the-open-source-community-tooling-built-on-asyncapi/

**Specification**

*   [**asyncapi**](https://github.com/asyncapi/asyncapi) - (forks: 77) (stars: 1139) (watchers: 1139) - the asyncapi specification allows you to create machine-readable definitions of your asynchronous apis.

**Documentation**

*   [**widdershins**](https://github.com/Mermade/widdershins) - (forks: 208) (stars: 665) (watchers: 665) - openapi / swagger, asyncapi & semoasa definitions to slate / shins compatible markdown
*   [**generator**](https://github.com/asyncapi/generator) - (forks: 54) (stars: 113) (watchers: 113) - use your asyncapi definition to generate literally anything. markdown documentation, node.js code, html documentation, anything!
*   [**api2html**](https://github.com/tobilg/api2html) - (forks: 18) (stars: 93) (watchers: 93) - a cli tool to transform swagger/openapi/asyncapi docs to beautiful html pages via shins/widdershins.
*   [**github action**](https://github.com/bump-sh/github-action) - (forks: 0) (stars: 24) (watchers: 24) - github action to deploy your api documentation on bump
*   [**docgen**](https://github.com/asyncapi-archived-repos/docgen) - (forks: 11) (stars: 17) (watchers: 17) - asyncapi documentation generator. deprecated in favour of
*   [**swagger4kafka**](https://github.com/stavshamir/swagger4kafka) - (forks: 4) (stars: 17) (watchers: 17) - automated documentation for kafka consumers built with spring (with @kafkalistener)
*   [**saunter**](https://github.com/tehmantra/saunter) - (forks: 7) (stars: 15) (watchers: 15) - saunter is an asyncapi documentation generator for dotnet.
*   [**scribano**](https://github.com/uesteibar/scribano) - (forks: 0) (stars: 5) (watchers: 5) - automatically build asyncapi documentation for your rabbitmq messages

**Definitions**

*   [**slack api specs**](https://github.com/slackapi/slack-api-specs) - (forks: 36) (stars: 122) (watchers: 122) - open api specifications for platform products by slack

**Filters**

*   [**openapi filter**](https://github.com/Mermade/openapi-filter) - (forks: 14) (stars: 32) (watchers: 32) - filter internal paths, operations, parameters, schemas etc from openapi/swagger/asyncapi definitions

**Code Generation**

*   [**asyncapi react**](https://github.com/asyncapi/asyncapi-react) - (forks: 13) (stars: 23) (watchers: 23) - asyncapi react component
*   [**node codegen**](https://github.com/asyncapi-archived-repos/node-codegen) - (forks: 5) (stars: 14) (watchers: 14) - an asyncapi codegen for node.js
*   [**apicurio data models**](https://github.com/Apicurio/apicurio-data-models) - (forks: 6) (stars: 11) (watchers: 11) - a library (java and javascript compatible) to implement data models for openapi and asyncapi.
*   [**asyncapi**](https://github.com/project-flogo/asyncapi) - (forks: 2) (stars: 5) (watchers: 5) - flogo extensions to support asyncapi
*   [**java spring cloud stream**](https://github.com/asyncapi/java-spring-cloud-stream-template) \- (forks: 3) (stars: 4) (watchers: 4) - java spring cloud stream template for the asyncapi generator
*   [**python paho template**](https://github.com/asyncapi/python-paho-template) - (forks: 2) (stars: 4) (watchers: 4) - python paho template for the asyncapi generator

**Topics**

*   [**topic definition**](https://github.com/fmvilas/topic-definition) - (forks: 5) (stars: 26) (watchers: 26) - asyncapi topic structure definition

**CI/CD**

*   [**github action**](https://github.com/bump-sh/github-action) - (forks: 0) (stars: 24) (watchers: 24) - github action to deploy your api documentation on bump
*   [**spectral action**](https://github.com/stoplightio/spectral-action) - (forks: 5) (stars: 19) (watchers: 19) - github action wrapper for spectral - a json/yaml/openapi/asyncapi/etc linter with custom rule support.
*   [**github action for generat**](https://github.com/asyncapi/github-action-for-generator) - (forks: 1) (stars: 10) (watchers: 10) - github action to generate all the things from your asyncapi document using the asyncapi generator
*   [**asyncapi github action**](https://github.com/WaleedAshraf/asyncapi-github-action) - (forks: 1) (stars: 5) (watchers: 5) - github action to validate if asyncapi schema file is valid or not.

**Parsers**

*   [**parser go**](https://github.com/asyncapi/parser-go) - (forks: 6) (stars: 18) (watchers: 18) - it parses asyncapi documents.
*   [**parser js**](https://github.com/asyncapi/parser-js) - (forks: 9) (stars: 7) (watchers: 7) - asyncapi parser for javascript (browser-compatible too).

**Validation**

*   [**asyncapi validator**](https://github.com/WaleedAshraf/asyncapi-validator) - (forks: 2) (stars: 17) (watchers: 17) - message validator for kafka/rabbitmq/anything through asyncapi schema
*   [**vertx asyncapi contract**](https://github.com/hvalls/vertx-asyncapi-contract) - (forks: 0) (stars: 10) (watchers: 10) - vert.x asyncapi contract provides a validation layer when publishing messages in vert.x eventbus
*   [**check\_api**](https://github.com/Mermade/check_api) - (forks: 2) (stars: 6) (watchers: 6) - a multi-api format validator and gate-keeper tool for the apis.guru api collection

**Generator**

*   [**go asyncapi**](https://github.com/swaggest/go-asyncapi) - (forks: 3) (stars: 14) (watchers: 14) - asyncapi spec from go code
*   [**documentation component**](https://github.com/kyma-incubator/documentation-component) - (forks: 7) (stars: 6) (watchers: 6) - react component for rendering markdown, openapi, asyncapi and odata
*   [**java spring template**](https://github.com/asyncapi/java-spring-template) - (forks: 5) (stars: 6) (watchers: 6) - java spring template for the asyncapi generator

**Vocabulary**

*   [**asyncapi toolkit**](https://github.com/SOM-Research/asyncapi-toolkit) - (forks: 4) (stars: 13) (watchers: 13) - repository to host the asyncapi grammar, metamodel, and code generation tools

**Converters**

*   [**converter go**](https://github.com/asyncapi/converter-go) - (forks: 5) (stars: 12) (watchers: 12) - convert asyncapi documents from older to newer versions with golang
*   [**converter js**](https://github.com/asyncapi/converter-js) - (forks: 4) (stars: 3) (watchers: 3) - convert asyncapi documents from older to newer versions.

**Directories**

*   [**asyncapi directory**](https://github.com/APIs-guru/asyncapi-directory) - (forks: 0) (stars: 11) (watchers: 11) - ⇄ directory of asynchronous api specifications in asyncapi format

**Bindings**

*   [**bindings**](https://github.com/asyncapi/bindings) - (forks: 9) (stars: 4) (watchers: 4) - asyncapi bindings specifications

**IDE**

*   [**vscode spectral**](https://github.com/stoplightio/vscode-spectral) - (forks: 2) (stars: 5) (watchers: 5) - visual studio code wrapper for the awesome spectral json/yaml linter with openapi/asyncapi support

**Editor**

*   [**editor**](https://github.com/asyncapi-archived-repos/editor) - (forks: 3) (stars: 4) (watchers: 4) - deprecated in favor of [github.com/asyncapi/playground](http://github.com/asyncapi/playground). online editor to try out asyncapi.

**Command Line Interface**

*   [**bump cli**](https://github.com/bump-sh/bump-cli) - (forks: 1) (stars: 3) (watchers: 3) - bump.sh cli - deploy your openapi & asyncapi documentations from your cii 

The number of GitHub action tools I find interesting. I see many of the patterns emerging in the AsyncAPI community that I have seen in the Swagger and OpenAPI communities. I also see some things that are different because the types of APIs being defined are different. This is one of the open source communities I will definitely be keen on mapping out over time to help me better understand where things are going.
