Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Ability to generate AsyncAPI file from Docs (Services and Events) #80

Closed
1 task done
boyney123 opened this issue Jan 18, 2022 · 3 comments
Closed
1 task done
Assignees
Labels
enhancement New feature or request

Comments

@boyney123
Copy link
Owner

Have you read the Contributing Guidelines on issues?

Description

EventCatalog allows you to define your event and services using markdown.

With the new plugin system (Coming) you can generate these docs using various tools (think spec first > docs, or code > docs).

What about docs > spec?

For example, if people have events and services documented and maybe schemas, then there should be no real reason why we can't generate AsyncAPI specs from this?

Maybe add a button on the UI that generates the spec file?

Motivation

Give people another option to get value from their docs into spec files.

With AsyncAPI you can do all sorts, like generate models, applications etc.

@boyney123 boyney123 changed the title Ability to generate AsyncAPI file from Services. Ability to generate AsyncAPI file from Docs (Services and Events) Jan 18, 2022
@boyney123 boyney123 added the enhancement New feature or request label Jan 18, 2022
@boyney123 boyney123 self-assigned this Jan 18, 2022
@thim81
Copy link
Contributor

thim81 commented Jan 18, 2022

AsyncAPi is a structured document, perfect for documentation and visualisation but it can also be used to generate clients.

While EventCatalog feels more like a "hub" to point towards the events & services documentation, generating an asyncAPI spec from the EventCatalog defined events would be interesting to kick-start the AsyncAPI writing.
But it would require plenty more manual additions and/or EventCatalog properties to make it a complete AsyncAPI like: channels, servers + you would end-up with a less-dry specification, since it would be difficult to generate a spec which uses $references.

The other way around would be my preferred workflow, define the AsyncAPI specification with re-usable schemas and generate "events" and JSON schemas out it.

But both can perfectly co-exists within EventCatalog, it is a matter of workflow.

@boyney123
Copy link
Owner Author

Yeah interesting, guess as you said there would be loads to consider (channels, etc), and it could complicate things pretty fast.

The other way around would be my preferred workflow, define the AsyncAPI specification with re-usable schemas and generate "events" and JSON schemas out it., yeah great let's start here for now with the plugin system and see how things go from there.

@boyney123
Copy link
Owner Author

AsyncAPI is now support as a plugin for eventcatalog, going to close this one for now 👍

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants