I’ve been using Easel from Inventables for vector based work, only because I’m used to it. It does have its limitations since it’s very much a CNC router app. Tweaking of things like bit size and stepover are also important there.
I then export the gcode and do a find/replace for all the router M03/M05 style commands and add M106/M107 every Z up and down (zup to move to a new part…M107 laser off), Z down to start cutting new object…M106 to turn it back on.
It’s clunky sometimes but it works.