asyncapi-toolkit icon indicating copy to clipboard operation
asyncapi-toolkit copied to clipboard

Toolkit supporting the AsyncAPI specification, including a grammar, metamodel, and code generation tools

DOI

AsyncAPI Toolkit

Repository to host the grammar, metamodel, and code generation tools for AsyncAPI.

AsyncAPI provides a specification that allows you to define Message-Driven APIs in a machine-readable format. It's protocol-agnostic, so you can use it for APIs that work over Kafka, MQTT, AMQP, WebSockets, STOMP, etc. The spec is very similar to OpenAPI/Swagger so, if you're familiar with it, AsyncAPI should be easy for you.

The tools hosted in this repository aim to provide the toolset necessary to develop Message-Driven APIs following a Model-based approach starting from AsyncAPI specifications.

Browse the AsyncAPI Toolkit documentation

  • Installation instructions
  • Quick Start guide
  • Generating an AsyncAPI Specification from an Ecore model
  • Generating an AsyncAPI Specification from an annotated UML model
  • AsyncAPI metamodel and grammar
  • Extended AsyncAPI metamodel with Service Level Agreement (SLA) primitives :new:
  • Project contents
  • Building instructions
  • Changelog

Want to learn more?

Check our publications and other resources about the AsyncAPI Toolkit!

  • Abel Gómez, Markel Iglesias-Urkia, Lorea Belategi, Xabier Mendialdua, Jordi Cabot. Model-driven development of asynchronous message-driven architectures with AsyncAPI. Software and Systems Modeling (2021). https://doi.org/10.1007/s10270-021-00945-3.
    [ Open access publication ]

  • Abel Gómez, Markel Iglesias-Urkia, Aitor Urbieta, Jordi Cabot. A model-based approach for developing event-driven architectures with AsyncAPI. Proceedings of the 23rd ACM/IEEE International Conference on Model Driven Engineering Languages and Systems, Association for Computing Machinery, Virtual Event, Canada, 2020, ISBN: 9781450370196. https://doi.org/10.1145/3365438.3410948.
    [ Archived preprint | Archived HD presentation ]

  • Abel Gómez. A model-based AsyncAPI code generator for IoT environments. AsyncAPI Conference 2020. https://conference.2020.asyncapi.com/#abel-gomez.
    [ Conference video | Archived HD presentation ]

  • Abel Gómez, Iker Fernandez de Larrea, Markel Iglesias-Urkia, Beatriz Lopez-Davalillo, Aitor Urbieta, Jordi Cabot. Una Aproximación Basada en Modelos para la Definición de Arquitecturas Asíncronas. Actas de las XXIV Jornadas de Ingeniería del Software y Bases de Datos (JISBD 2019), Sistedes, 2019. http://hdl.handle.net/11705/JISBD/2019/035 (only in Spanish).
    [ Open access publication ]

  • Marc Oriol, Abel Gómez, and Jordi Cabot. AsyncSLA: Towards a Service Level Agreement for Asynchronous Services. In The 39th ACM/SIGAPP Symposium on Applied Computing (SAC ’24), April 8–12, 2024, Avila, Spain. ACM, New York, NY, USA, Article 4, 8 pages. https://doi.org/10.1145/3605098.3636074.
    [ Archived preprint ]

License

This project is licensed under the EPL v2.0 license.

The AsyncAPI logo and AsyncAPI specification are property of the AsyncAPI Initiative. The AsyncAPI Specification is licensed under The Apache License, Version 2.0.