Show HN: Hyvector – A fast and modern SVG editor
54 comments
·May 9, 2025jwmcglynn
Very nice! My side project is a C++ SVG rendering library, and I have never been able to find great SVG editors.
I usually fall back to Illustrator and then clean up the resulting markup, or a text-based editor such as https://www.svgviewer.dev/
Your UX is quite polished, and your tool already supports more features than other ones I've found, good work!
For reference this is my project, https://github.com/jwmcglynn/donner, which has a web-based "editor" (currently just code-based editing) prototype here: https://jwmcglynn.github.io/donner-editor/
SVG is one of those things that has lots of potential but has been impacted by not-so-great tooling, it's my passion and I'm glad to see innovation in the space.
somethingsome
What's the problem with inkscape? It has some bugs, but otherwise it works quite well
simonbw
Inkscape is a vector editor that can export to SVG, but that's a bit different than an editor specifically for the SVG file type.
I've often found myself wanting to edit SVG code directly while viewing the result. This maybe not the most common approach, but sometimes you want to be be dealing with specifics that relate to the fact that you're working with an actual SVG file, and not just a vector image.
jcelerier
Isn't inkscape's native data format SVG?
https://inkscape.org/en/develop/about-svg/
> The Inkscape project does not only use SVG as its native file format, it also takes part in the further development and refinement of SVG features by delegating a representative to the W3C SVG Working Group.
somethingsome
I think you can use the XML editor in the edit menu to directly edit the SVG in inkscape
WillAdams
It's a nice beginning.
Some obvious features which I missed:
- nodes tool should want to snap begin/end nodes together when editing (and the snap distance could be larger when initially creating, esp. w/ the pencil tool)
- rather than a Nodes tool for editing, something like to Wick Editor's Flash/Futurewave Smarksetch pull/push deforming would be much more mobile friendly
- if corner rounding doesn't work on polygons it should be hidden/disabled
jansan
Thanks, this is the kind of feedback that I was hoping for.
Gualdrapo
This is what I wish KDE's Karbon was - a friendly but quick and capable SVG editor.
Granted, I wish it somehow could had the functionalities SVG Path Editor[0] has, which I haven't been able to find in any other editor (like, for example, converting absolute `<path>` coordinates to relative, editing each line, curve, and so on for each `<path>`).
Another feature that would be great to have but would require a monumental amount of work, or maybe even be its own project, would be animation.
herpdyderp
Not a single thing in this works in Safari
cyanydeez
Apple products are a poor testbed for web apps.
edu
Nice, shows a lot of promise. A quick feedback, placign the floating toolbar at the top is distracting and takes up real-state from the actual drawing. I'd prefer to have a regular toolbar or placing it at the bottom of the canvas.
Edit: or make it moveable/collapsible
jansan
Thanks, the toolbar has already been redesigned and moved several times. It collapses anyway when the window gets too narrow, so giving it a collapse button should be super easy to do.
jfindley
Plus one on the floating thing, on desktop it'd be great to be able to move it out of my way but still have it present.
Also, while I assume/hope there are shortcut keys on desktop, I have no idea what there are and if they're documented anywhere I can't find it. If there aren't shortcut keys, it'd be super useful to add them, at least for common actions.
ansc
I've been thinking about why there's no modern SVG editor like this. Super nice to see. Inkscape can be a bit of a pain imo, even if it has extensive features. I'll definitely give it a spin. Good luck!
osener
There are a lot of options in this thread already, but I've been using Figma to create and edit SVGs and don't have any complaints so far.
pphysch
Have you tried https://boxy-svg.com?
boomskats
I really like the UX of this. Very usable on a Wacom enabled android tablet.
Don't know if your spline editing mechanism (i.e. the ability to drag the line around from an aribtrary point rather than tweaking the individual handles) is something you came up with yourself or borrowed from elsewhere, but I really really like it.
Only thing I noticed is that touch scrolling doesn't work on the tree on the left. Otherwise it's very smooth.
Have you implemented any keyboard shortcuts?
jansan
Thanks, the curve dragging is surprisingly easy. I think a very old discussion in a Google forum have me the idea how to implement it. It even works with keeping the handle directions (pressing Shift while dragging).
That tree on the left is difficult to get right on all devices. It has to support click, touch to click, drag and drop, swipe scrolling, touch scrolling, etc., and all that while acting as if it holds hundreds of elements. There are still a few issues, for example swipe scrolling and some jankiness on iOS, but I have them on my list.
Keyboard shortcuts are implemented for non-mobile devices. If you open a menu on the menu bar, you can see them at the right in the menu items.
jvidalv
Cool! Can you add support for an MCP API so we can use it within claude?
Karliss
There is no way to join 2 nodes without introducing new edge, unless there is some hidden shortcut. Also the "connect paths" ignores selection and instead randomly picks one of the two ends with matching direction. Even if you know the end direction rule you can't know which of the 2 endpoint pairs will be connected.
I might be slightly biased as I am more used to even/odd infill mode compared to non zero mode, but having user constantly keep track of which paths are clockwise and which are counterclockwise seems like unnecessary hassle, especially for paths without infill where it shouldn't matter. At least there is a UI indicator for it, otherwise I would be very confused.
jansan
> There is no way to join 2 nodes without introducing new edge, unless there is some hidden shortcut.
Duh, I was not even aware that nodes get connected with a single node replacement in other apps. Somehow I missed that.
> Also the "connect paths" ignores selection and instead randomly picks one of the two ends with matching direction.
It should currently connect by selection order (first selected with first selected on other path), but I may have to rethink this.
Regarding fill rule I am aware that this is missing. Thanks a lot for the valuable feedback.
iFire
The first thing that came to mind was my friend's project to do a SVG editor in Godot Engine https://www.godsvg.com/.
I'll write my first impressions of https://github.com/hyvectorapp so it helps usability and improvement.
Oh it's a freemium app.
hyvectorapp starts off looking like figma, penpot style which is a good sign.
I can export svg [x]
There's no align to grid system.
vector tracing is not generally solved except via the vectormagic product and machine learning research prototypes. I wonder how you solved it.
Can't interact more today so I'll end with this note of hopefulness.
jankovicsandras
Can this solve vector tracing? https://github.com/jankovicsandras/imagetracerjs (Public domain) Discaimer: I made this.
iFire
The result doesn't match the original svg https://github.com/jankovicsandras/imagetracerjs/blob/master... on an a/b test.
titaphraz
The inkscape extension link is to a empty page: https://inkscape.org/~MarioVoigt/%E2%98%85imagetracerjs-for-...
jarek-foksa
"Vectorize" generator in Boxy SVG also uses imagetracerjs under the hood, you can check the online demo here: https://boxy-svg.com/#demo-tracing
I think Inkscape still uses Potrace internally, which is produces a bit better results.
pveierland
This locked up my system so hard I couldn't recover by killing the browser or reloading the window manager (Firefox 133.0.3 / Sway 1.9). Had to reboot and don't have time to investigate further right now. Appeared to happen while double clicking and dragging around elements a bit rapidly.
sandreas
Nice thank you. I often use https://github.com/Yqnn/svg-path-editor, but I'm going to try this one out.
I have been working on Hyvector for the last five years and finally decided to present the result of my work.
Hyvector is an SVG editor that runs in all modern browsers. It is stable, very fast, and capable of handling complex SVG images.
Big new features like art strokes, vector tracing, colorizing are in the making, but for now the focus is on pushing a polished first release out of the door.
I would love to hear any feedback on what you like, missing features, or any bugs you encounter via our issue tracker: https://github.com/hyvectorapp/hyvector-issues
Note that while Hyvector should work on a phone, it is much more usable on a desktop computer or tablet.