Almost everything you need to create vector art, SVG doesn't support.
Multiple outlines in a single shape? No. Varying thickness in an outline? No. Rounded corners on arbitrary vertices? No. Non-destructive boolean operations? No. I'm not even sure SVG supports paragraphs.
Many of these Inkscape implements as live filters, which are saved as SVG extensions in the XML .svg file that nobody but Inkscape can properly load.
SVG is ridiculously bad as a creation format. It's a good format to export to, but as a backend and it's just insane. It's like using a single PNG file as a backend for your multi-layer 128bpp raster project.
I use Inkscape a lot but I can't help but notice that the best vector art illustration come from Affinity Designer, Corel Draw, and Adobe Illustrator. If you compare the quality of artwork made with proprietary tools to those made with Inkscape, it's very clear that Inkscape severely limits what artists can achieve. You can easily create complex illustrations in other tools that would be a nightmare to manage in Inkscape. Just compare how you clip something in Inkscape to how you do it in Affinity. It's ridiculous how different the two workflows are.
which runs well in Mac OS and Linux and for the basics has the basic vector editing capabilities which folks would expect.
Considering those operations are available in other vector art tools that aren't constrained by directly using SVG as the fundamental editing format it seems like a reasonable complaint.
Maybe if we surrounded ourselves with beautiful and sensible tools it would be easier for us to write beautiful or sensible applications. Maybe there would be fewer dancing bears.
Do all the others (AD, CD, AI) use some proprietary format that makes their life easier? Is there no better alternative to SVG on the open source side of things?
I also used CorelDraw for many years before moving on to Inkscape, and there were definitely some features that I still miss (e.g. better power clip behavior, blend shapes, etc). But I have came to appreciate Inkscape using SVGs because it allowed me to build my own tooling around it, I only needed libraries that can read and write XML.
SVG is maybe not the best format and Inkscape has many extensions that made their SVGs nonstandard (e.g. mesh gradient), but it is a fairly accessible format. I am not sure the gains promised by a proprietary format would be worth losing out on various SVG/XML tools.
So say you want to make something like a wall with a tunnel/cave and a road in it. You can draw a rectnagle, a circle, put the circle inside the rectangle and it's clipped, then use a triangle for the road and put it inside the circle and it's clipped.
In Inkscape you need to select both shapes and use clip group. Which shape clips which depends on which shape is above the other. I can't tell you which one sould be above, by the way, because I never remember it. If you want to clip one shape by another shape that is already inside a clipping group, you have another problem because you need to double click the group to be able to selected the clipped shape. The more layers of clipping you have, the more you have to double click.
The layer structure is also different. In Affinity, the shape itself is the group and occupies only 1 line in the layers window. In Inkscape, every clipping group creates 3 entries in the objects window. One for the group itself, one for the shape at the background, and one for the shapes being clipped. So in Inkscape you have something like:
g277 (this is the group)
-> circle
-> Clip
---> rectangle
In affinity you have:
rectangle
-> circle
There’s a conflict between what is needed to simply display images, and what is needed for an ideal editable document.
A web browser doesn’t need the complexity of non destructive Boolean operations, but an editor program does. It can all be exported to SVG at the end once it doesn’t need to be edited anymore. Things like variable thickness outlines can just be turned in to filled Bézier curve shapes that happen to be the shape of the outline.
For multiple lines just duplicate your shapes and group or even join them. For varying thickness you can duplicate your shape and layer them. Rounded corners are supported on every vertice so I'm not sure where are you geting that.