event-catalog / eventcatalog

An open source documentation tool to bring discoverability to your event-driven architectures
https://eventcatalog.dev
MIT License
1.58k stars 132 forks source link

Fetching Info from async api spec #518

Open XaaXaaX opened 1 month ago

XaaXaaX commented 1 month ago

Have you read the Contributing Guidelines on issues?

Description

This Feature request is related to asyncapi plugin

Context

The Asyncapi plugin helps to generate automatically the events and services but some missing parts lead to a duplicated work on markdown to well prepare the adoption

Proposal

This can be useful to extract some catalog information from some metadata from async api specs as async API v3 supports tags element as part of the info object. Find Spec Here

The tag object as explained here provides the following informations

asyncapi: 3.0.0
id: '.......'
info:
    title: MyService
    version: 1.0.0
    description: My service description
    tags:
      - name: tagName
         description: Tag Value or description
    externalDocs:
       - description: Find more info here
         url: https://example.com

Details

Domain Names

Extracting the DomainName from specification tags under a predefined name exp. DomainName

Owners

Extracting the Owner from specification tags under a predefined name exp. Owner, this is often useful for multi-team catalog

Badges

Generating the Badges, Put the whole tags of AsyncApi as a collection of Badges ( to be clarified if it seems inconvenient)

External Links

Feed the external links from asyncapi externalDocs object

Note: the ideas can be challenged.

Motivation

Remove unnecessary markdown manipulation when using asyncapi spec plugin