In gsoc 2021 me and Jonas Lagoni created the asyncApi simulator which uses the Async Api specification and a related schema defined file to generate aynchronous traffic using asynchronous protocols.
https://github.com/asyncapi/simulator
For the mentorship program 2023 i aspire to turn the cli application into a full desktop application that aims to visualize an asyncApi file and allow the user to generate traffic in an interactive way. Along with the creation of the application i will create rich documentation for the project.
I will specify further details regarding the desktop application in the following days.
The basic skeleton of the application is already done and can be installed on a windows system. However the functionality of the application is a major undertaking and will take time and consideration. The installer.exe is available in the latest release of the simulator.

I am thinking of making the application depict the endpoints and servers in an interactive graph where the user will be able to connect the nodes and generate traffic.
Any thoughts?
Functional requirements
| id |
Description |
| #F1 |
User should be able to use the toolbar to add a asyncapi file that describes the targeted api |
| #F2 |
User should be able to draw lines between operation and server nodes |
| #F3 |
With the use of the simulate button on the sidebar the user should be able to simulate traffic that is described by the node connections. |
| #F4 |
The user can click on the node connection and specify payload and headers for the event. |
| #F5 |
The user can specify sequences of requests to be executed. Sequences will be groups of nodes visually outlined in the node view by a border. |
| #F6 |
With the user of the simulate scenario button on the sidebar the user should be able to simulate traffic that is described by a sequence of requests. |
| #F7 |
The user can specify a title and description for the sequences. |
| #F8 |
The user can create multiple sequences and access them through a list. |
| #F9 |
The user can save the sequences as a scenario text file. |
Non-functional requirements
| id |
Description |
| #S1 |
The application needs to have thorough type definitions using typescript |
| #S2 |
The application needs to use react. |
| #S3 |
The functional requirements need to be covered by the relative tests. |
Implementation details
| id |
Description |
| #S1 |
The application will work with react and utilize state. Each region in the application will be a separate component but all of them will subscribe to the applications context. |
| #S2 |
The application will not use external libraries for drawing the nodes. There will be no third party libraries involved in the presentation of the application. |
| Goal |
Duration |
| Restructure and add code to the library so that the functions and interfaces that are needed for the application are generated. The format of representation of the graph should be decided at this stage. There should be functions that take the representation of the graph at runtime and save it as text file (the so called scenario file). |
6 weeks |
| Create the components for the graph. This includes the sidebar, the nodes the lines between them. |
8 weeks |
| Create the visual functionality of the graph. This includes the capability to click on the nodes and lines\connections to edit their details on the sidebar , manage the app state and generate traffic operations |
8 weeks |
| Create better documentation for the project and the desktop application. Probably create a video tutorial |
2 weeks |
In gsoc 2021 me and Jonas Lagoni created the asyncApi simulator which uses the Async Api specification and a related schema defined file to generate aynchronous traffic using asynchronous protocols.
https://github.com/asyncapi/simulator
For the mentorship program 2023 i aspire to turn the cli application into a full desktop application that aims to visualize an asyncApi file and allow the user to generate traffic in an interactive way. Along with the creation of the application i will create rich documentation for the project.
I will specify further details regarding the desktop application in the following days.
The basic skeleton of the application is already done and can be installed on a windows system. However the functionality of the application is a major undertaking and will take time and consideration. The installer.exe is available in the latest release of the simulator.
I am thinking of making the application depict the endpoints and servers in an interactive graph where the user will be able to connect the nodes and generate traffic.
Any thoughts?
Functional requirements
Non-functional requirements
Implementation details