lostintangent / spaces

Discover, share, and connect with developers across your favorite teams, classrooms and communities
https://aka.ms/vsls-spaces
MIT License
34 stars 3 forks source link

Add extension contribution point for auto-joining communities #64

Closed lostintangent closed 5 years ago

lostintangent commented 5 years ago

This PR introduces an extension point for VS Code extensions to declare they have an associated Live Share Community (“liveshare.communities”). This way, if a developer installs their extension, it will automatically join the community without needing to do anything further. Additionally, if the user disables/enables/uninstalls the extension, the associated community will be joined/left as appropriate. You can see a usage example in the counter sample.

The usecase I have in mind for this, is making it easy for schools/teams/etc. that have extension packs, to associate a Live Share community along with their pack (e.g. LBCC CS Pack, Boundary Studio). That way students/members can simply install a single extension/pack, and join the community without any effort. This, along with our existing deep link URL, provide rich mechanisms to simplify the community onboarding process.

The following GIF shows the experience, using the Live Share Counter sample, which I updated to include an associated community called “counter”:

Join

lostintangent commented 5 years ago

Before I merge this, I’m going to:

  1. Display a notification when you auto-join/leave a community that was contributed by an extension

  2. Add a setting to allow you to control whether you auto-join communities that are contributed by extensions (it would default to true). If disabled, then the prompt in #1 would ask you if you’d like to join