cli
cli copied to clipboard
Collaboratively editing files through the Studio
Reason/Context
Comes from https://github.com/asyncapi/cli/issues/78#issuecomment-953701036.
Imagine having the possibility to open Studio locally through the CLI and start editing AsyncAPI files right away. This is what https://github.com/asyncapi/cli/issues/78 is about.
But in addition, imagine doing that in collaboration with some other folks in real-time. This is what this feature request is about. Editing AsyncAPI files collaboratively, in real-time, with other users. All through the Studio running on each user machine.
Description
TL;DR: One user acts as the file owner. Its own CLI file server will be exposed publicly and a public URL will be generated. Others can join editing the same file by running a new CLI command such as start studio <shared-public-url>
.
Technical details
In order to expose the file owner CLI file server, we would use Localtunnel, a node package that exposes your localhost to the outside, generating for you a public URL.
It can either run as executable or be invoked through its library, doesn't need anything else (i.e. [ngrok[(ngrok.com) requires the user to be registered). This is ideal for us because we could automate it by just using the node library when a certain command is called, e.g. share studio
or similar.
The URL that localtunnel gives, it's a URL that points to their public proxy server (
Something that is also possible is to host our own copy of the proxy server, which is available here. This will allow us to configure our DNS to point to the proxy server, where generated URLs will then look like <random-id>-studio.asyncapi.io
.
However, the pros and cons should be carefully taken into consideration. For example, the cost of maintaining our own service.
Welcome to AsyncAPI. Thanks a lot for reporting your first issue. Please check out our contributors guide and the instructions about a basic recommended setup useful for opening a pull request.
Keep in mind there are also other channels you can use to interact with AsyncAPI community. For more details check out this issue.
This issue has been automatically marked as stale because it has not had recent activity :sleeping:
It will be closed in 120 days if no further activity occurs. To unstale this issue, add a comment with a detailed explanation.
There can be many reasons why some specific issue has no activity. The most probable cause is lack of time, not lack of interest. AsyncAPI Initiative is a Linux Foundation project not owned by a single for-profit company. It is a community-driven initiative ruled under open governance model.
Let us figure out together how to push this issue forward. Connect with us through one of many communication channels we established here.
Thank you for your patience :heart:
This issue has been automatically marked as stale because it has not had recent activity :sleeping:
It will be closed in 120 days if no further activity occurs. To unstale this issue, add a comment with a detailed explanation.
There can be many reasons why some specific issue has no activity. The most probable cause is lack of time, not lack of interest. AsyncAPI Initiative is a Linux Foundation project not owned by a single for-profit company. It is a community-driven initiative ruled under open governance model.
Let us figure out together how to push this issue forward. Connect with us through one of many communication channels we established here.
Thank you for your patience :heart:
Let's remove the stale
label @magicmatatjahu ?
@smoya Done :)
This issue has been automatically marked as stale because it has not had recent activity :sleeping:
It will be closed in 120 days if no further activity occurs. To unstale this issue, add a comment with a detailed explanation.
There can be many reasons why some specific issue has no activity. The most probable cause is lack of time, not lack of interest. AsyncAPI Initiative is a Linux Foundation project not owned by a single for-profit company. It is a community-driven initiative ruled under open governance model.
Let us figure out together how to push this issue forward. Connect with us through one of many communication channels we established here.
Thank you for your patience :heart:
Relevant
This issue has been automatically marked as stale because it has not had recent activity :sleeping:
It will be closed in 120 days if no further activity occurs. To unstale this issue, add a comment with a detailed explanation.
There can be many reasons why some specific issue has no activity. The most probable cause is lack of time, not lack of interest. AsyncAPI Initiative is a Linux Foundation project not owned by a single for-profit company. It is a community-driven initiative ruled under open governance model.
Let us figure out together how to push this issue forward. Connect with us through one of many communication channels we established here.
Thank you for your patience :heart:
I believe this is still interesting and a cool project to work on
Hey @smoya I would like to give it a try. Not sure how long and difficult this would be. But will try my best.
@chinma-yyy I have already started working on it and brainstorming through it. We can work together. It'd be better that way, I hope helping hand won't hurt either of us :smile: You can HMU on slack to connect further.
@chinma-yyy @kaushik-rishi FYI, a possible enhanced version of this feature has been presented as candidate for the Mentorship Program. See https://github.com/orgs/asyncapi/discussions/689#discussioncomment-5899110
This issue has been automatically marked as stale because it has not had recent activity :sleeping:
It will be closed in 120 days if no further activity occurs. To unstale this issue, add a comment with a detailed explanation.
There can be many reasons why some specific issue has no activity. The most probable cause is lack of time, not lack of interest. AsyncAPI Initiative is a Linux Foundation project not owned by a single for-profit company. It is a community-driven initiative ruled under open governance model.
Let us figure out together how to push this issue forward. Connect with us through one of many communication channels we established here.
Thank you for your patience :heart: