Pizzaandy / Gobo

Gobo is an opinionated code formatter for GameMaker Language.
https://pizzaandy.github.io/Gobo/
MIT License
20 stars 1 forks source link

VSCode extension strategy #12

Open adam-coster opened 4 months ago

adam-coster commented 4 months ago

I'm not yet sure if we'll be able to adopt Gobo in our work, but if we can do it we'll want it as a VSCode extension. In that case I'd love to help out.

There are a few ways we could approach that, so this Issue is for discussion on the topic.

At a high level I see three options, in best-guess preference order:

  1. A VSCode extension is added in a subfolder of this very repo, so that everything is in the same place and you maintain full ownership. I would contribute through PRs.
  2. A new Pizzandy repo just for the extension is created. I personally prefer monorepos, but I can definitely see wanting to separate concerns (especially since the tech stacks for Gobo and a VSCode extension are basically non-overlapping). I would contribute through PRs or directly on main.
  3. I add Gobo into Stitch for VSCode. On the one hand I wouldn't use Gobo without Stitch, so this would be convenient. But I think it's better to keep them decoupled so that you have full project ownership, and so that people could use it with other VSCode GML extensions, and since it's very unlikely we'd be editing Gobo on our side (the tech stack is very much outside my wheelhouse!).

What do you think? I've put a few VSCode extensions together at this point so I can help get the initial setup and publishing stuff figured out in any case.

Pizzaandy commented 4 months ago

I agree with the ranking of these options. Putting the VSCode extension in a top-level Gobo.VSCode folder should work.

adam-coster commented 4 months ago

Rad. If I get the chance to do so I'll open a PR