This post bundles updates from the following official tools, but not limited to: bundler, chatbot, studio, diff, glee, create-glee-app, cli, optimizer, modelina, generator, generator-react-sdk, java-template, java-spring-cloud-stream-template, java-spring-template, dotnet-nats-template and ts-nats-template.
You can find the last tooling update here.
In case you want to read what other changes have been happening, you can get the overviews here:
- Sergio's latest AsyncAPI specification and parser update
- Maciej's latest AsyncAPI design and documentation update
- Alejandra's latest AsyncAPI docs update
- Barbaño's latest AsyncAPI training update
Highlights
These are some of the highlights of changes that have happened in the tools or what's to come! It of course does not cover all the changes but only certain ones.
IntelliJ AsyncAPI plugin
In case you use IntelliJ as your IDEA to edit AsyncAPI documents, you can use the following plugin to make your experience better. It helps you edit the AsyncAPI document with reference auto-completion, validating your document on the fly and showing you the documentation right next to your editor!
The plugin can be found in jasyncapi-idea-plugin repository.
EDAVisualiser
Finally donated to the AsyncAPI organization, is the possibility to visualize AsyncAPI documents in the same or more advanced ways as the AsyncAPI studio. It focuses on visualizing different views, each having a specific reason for being there.
Do you want to figure out which applications interact with one specific application? Use the ApplicationFocusView
. Do you want to view the behavior of your application? Use the ApplicationView
. Do you want to get an overall perspective of how all your applications interact with each other? Use the SystemView
.
The hope is that going forward this library will provide different ways, and push the current developer experience, for how developers are onboarded to a complex system.
It of course works with a range of frameworks such as angular, Next.JS, react, and Vue.
You can play around with the small playground here: https://asyncapi.github.io/EDAVisualiser
Kafka and AMQP 1.0 support for Glee
Currently, Glee supports two protocols, WebSocket and MQTT, but it is currently being pushed with two new protocols, Kafka and AMQP 1.0. This is being done by Ruchi and Atharva respectively as part of the AsyncAPI mentorship program.
Code generation
We have a bunch of changes to the code generation tools that I am gonna list here.
Node.js code generator now throws validation exception when receiving incorrectly formatted payload. It now also supports mqtts
. It now also supports oneOf
messages.
TypeScript Nats code generator now supports JetStream fetch, pull subscribe, push subscribe, and pull.
.NET Nats code generator now supports two types of serialization libraries, either Newtonsoft or the native System.text.Json.
Java code generator now supports different TLS options for ibmmq-secure
.
Modelina, Python now supports two styles of imports, either using implicit or explicit, Python also now support basic Pydantic support.
.NET now has a Newtonsoft preset for generating models with, well, methods for converting models to and from JSON using Newtonsoft.
To that end
If you have worked on something or are working on something that you would like to be included in these updates, feel free to reach out!
Photo by Markus Winkler on Unsplash