Closed derberg closed 1 year ago
Makes senseπ It's about time we add a separate tutorial that a reader can follow to create and run an example template
This issue is part of the AsyncAPI Bounty Program, interested contributors need to follow the guidelines below to ensure fairness and timely completion of assigned tasks:
The assignment of tasks will be prioritized in the following order:
We encouraged everyone to apply as long as the task is for you (falls under your skill set). We will not be using the first comment - get assigned method for assignments. Instead, we will provide 3 days to consider all individuals interested before assigning any bounty task.
To maintain accountability and ensure the timely completion of the deadline for this task will be 6 - 8 weeks from the date of assignment. If a contributor requires an extension on their task, it should be communicated and approved by the maintainer.
Contributors must provide weekly updates on the task they are working on to help maintainers stay informed of progress. If a contributor fails to provide an update, they will be reminded via a ping. If a contributor fails to provide an update after three pings over three weeks, we will assume they have silently dropped the issue, and it will be reassigned to someone else.
Any contributor who drops an assigned issue will be penalized and will not be eligible to participate in the bounty program for 6 months. We understand that unforeseen circumstances can arise, and dropping an assigned issue may be unavoidable in some cases. However, we believe that enforcing this penalty is necessary to ensure the effectiveness of the bounty program, respect maintainer time, and honor the efforts of other contributors who could have solved the issue but were unable to do so due to the drop-out.
We encourage all contributors to follow these guidelines to ensure a fair and timely completion of tasks assigned through our bounty program.
@derberg @thulieblack I'm interested in authoring the tutorial.
@derberg I am interested too in this
@Florence-Njeri has a priority to work on this issue as docs maintainer for generator. @octonawish-akcodes have a look on other bounty issues π
@Florence-Njeri so π when do we start π
@derberg Oops there arent any other bounty issues available
@octonawish-akcodes There are some -> https://github.com/issues?q=is%3Aopen+org%3Aasyncapi+label%3A%22bounty%22 or did you look for docs task only?
@derberg 8th May will work well for me since I'm going on holiday next week.
@Florence-Njeri perfect, we have lots of holidays next week in Poland anyway π Let's sync on slack for an onboarding call
just had an onboarding call with @Florence-Njeri to explain the scope and align how we work on it, especially that some technical input is needed first.
for now makes sense to keep tutorial under Tools -> Generator bucket and follow the same template as https://www.asyncapi.com/docs/tutorials/generate-code
but if during template development, we will figure it do not makes sense, we will change approach
Hey, @Florence-Njeri how's the task going?
for now Florence is blocked by my tech input that I work on "as we speak" π
@Florence-Njeri ok, so when I started working on technical input, I kinda started feeling the blues, you know and while making notes, I figured I can turn it into article.
I just opened PR to my blog https://github.com/derberg/derberg.github.io/pull/62 and you can preview it here https://derberg-github-io-git-articlecodegenpython-derberg.vercel.app/blog/asyncapi-codegen-python
it is work in progress, there are some technical issues
this doesn't mean the tutorial is not needed. On the contrary, it is super needed. Article is written from a personal note, as a story, so it can only be reused by you as technical input. Of course you do not have to explain parser, generator and other stuff like I did as your tutorial is part of the docs where these things are explained and you can link.
anyway, you can already start working on tutorial. The best way to write it is when you will replicate tutorial steps on your own.
ah, and one more note, article is in progress, I did not read it as a whole, there is a bunch of grammar mistakes so please don't laugh π
This blog, ehn, took the words right out of my mouth.
@thulieblack @derberg I've started working on the tutorial, hoping to put up a PR before end of the week
ok, so article is now live: https://www.brainfart.dev/blog/asyncapi-codegen-python
sample template that I developed while writing the article is here: https://github.com/derberg/python-mqtt-client-template
enjoy π
Hey guys @derberg @thulieblack, I've finished writing the first draft for the tutorial. I need to do an editorial check then I'll put up a PR for this issue.
:tada: This issue has been resolved in version 1.10.11 :tada:
The release is available on:
Your semantic-release bot :package::rocket:
Reason/Context
So we already have https://www.asyncapi.com/docs/tools/generator/template-development that nicely explains all basic requirements for a template and possible features.
What we are missing is a tutorial that someone follows to:
This could be a foundation for further development of more tutorials that would basically add more features to this test template
Description
if you do not have asyncapi document to test your template with, just run asyncapi new --example=tutorial.yml --no-tty to get one
asyncapi new --example=tutorial.yml --no-tty
from AsyncAPI CLIPublish to a Topic
). So the tutorial would explain all about code generation template, how to grab channel name and message info from AsyncAPI using Parser