Read March 2021 at AsyncAPI for the update from March.
AsyncAPI specification release cadence
I'm super happy to share that we removed the last roadblock for the next AsyncAPI release. Basing on some discussions during our public meetings and on this issue, the release schedule for the spec looks like this:
- June 2021
- September 2021
- January 2022
- April 2022
- June 2022
- September 2022
- January 2023
- April 2023
- June 2023
In June 2021, we will release 2.1.0 version of the specification. It is going to be the first release under open governance model, under Linux Foundation and new contribution guide. So many new things, a lot to organize around. It means we probably won't accept too many changes as logistics will consume a lot of time. We welcome any help. Join our Slack for more details.
AsyncAPI use case at eBay
If you were looking for an AsyncAPI use case that shows some big tech using AsyncAPI in production, it is here. I highly recommend you read the article AsyncAPI 2.0: Enabling the Event-Driven World from Shekhar Banerjee from eBay.
React component and HTML template merge
AsyncAPI document can be rendered into documentation using two different tools maintained by the AsyncAPI Initiative:
- You can use React component, also bundled as Web Component, to render the AsyncAPI document on the client-side.
- You can use HTML template that is a docs generator compatible with the AsyncAPI Generator for a server-side generation.
These are two completely separate tools. People are contributing to both. There are some features supported in the first one but not in the other one, and vice-versa.
It is such a waste of time for contributors. We never liked it. Maciej Urbanczyk took the effort to change it.
Solution: Use React component as the core and HTML template to provide static output by rendering React during generation (you may know such approach from tools like Gatsby or Next.js).
Sounds simple, but there was a lot of work to do:
- React component to use official AsyncAPI Parser (yes, we were a bit behind there)
- Provide features from HTML template to React component (who likes functionality regression, right?)
- Rework design of React component to match the HTML template
The result:
- You need to try the new React component that is getting closer to the 1.0 release and join the discussion.
npm install @asyncapi/react-component@next
- HTML template already uses this React release candidate under
0.21.1
version.
Your favorite missing features like rendering of extensions and bindings are already there!
Intend-driven API for AsyncAPI Parsers
Over the last couple of weeks Jonas Lagoni and Sergio Moya worked on an idea to make the AsyncAPI JavaScript Parser, and in future other parsers, resilient to breaking changes in the AsyncAPI specification.
Why?
The current parser is bound to the structure of the AsyncAPI specification. The goal is to move away from such an approach into the API driven by the developer's intent.
Learn more about the outcome of this tremendous effort from Sergio's article: Designing a unified Intent-driven API for all AsyncAPI's parsers
WebSocket
Since we were getting more and more questions about using WebSocket with AsyncAPI, it was about time to provide some learning materials. We had no dedicated documentation nor examples, so I decided to spend few weeks on that subject, and as a result, we got:
- Blog post on WebSocket, Shrek, and AsyncAPI - An Opinionated Intro
- Blog post on Creating AsyncAPI for WebSocket API - Step by Step
- And soon I'll release the last blog post on From API-First to Code Generation - A WebSocket Use Case
In addition, you can have a look at official WebSocket example.
There is also a live stream I did about this topic. I will also present at EDASummit on 19th of May and most probably at APIOps Helsinki someday around mid-June. Stay tuned.
Jobs
Is your company looking for an AsyncAPI expert? Now you can share your job description on the AsyncAPI website to share it directly with the AsyncAPI community. In April, we had 300 individual users looking at Jobs view even though we do not actively promote it. Once the list of jobs grows, we will promote it more to increase the traffic and job offers visibility.
Head on here and check out instructions on getting your job posting published.
This option to add custom job offers, including jobs filtering, was contributed by Acebuild
RSS
We finally have an rss feed for our AsyncAPI blog. All thanks to Mike Ralphson.
If you do not like feed readers, just like me, then use some service like Blogtrottr to get email notifications. I use it for a GitHub blog on the free plan, and I'm super happy.
AsyncAPI workshop aka training
More and more people learn about AsyncAPI. We need to make sure there are good learning materials for anyone. More important, we need a solution that is easy to scale.
Our new initiative is to work on training materials that can be used for in-class workshops with trainers, but on the other hand, they need to be available on a platform that offers self-learning training. All discussions happen here, and you can also join the #training channel in our Slack.
Who knows, maybe once it grows to a proper size, we will start thinking about some official certification program?
AsyncAPI and Kafka
This year there were many sessions about AsyncAPI at Kafka Summit. You need to have a look. If you want to work around the registration process, watch the below recording from Dale Lane explaining how to use AsyncAPI with Kafka:
Dale has more content about AsyncAPI. For example, have a look at his work on the AsyncAPI Node-RED plugin:
Interest growth
I'm losing track here. It is growing so fast that we should expose some real-time metric that shows some aggregated data.
For example, on Twitter, we went up by 200 followers in April, up to 1900. Now, when I write this article, it is already over 2000.
On Slack, we are already over 1200, and on LinkedIn, over 1100.
Photo by Waldemar Brandt on Unsplash