HNHacker News
TopNewBestAskShowJobs

jarek-foksa

1,958 karma · joined April 19, 2011

I'm the developer of boxy-svg.com and xel-toolkit.org.
submissionscomments
jarek-foksa··on Omarchy: Any User Process Can Escalate to Root
He clearly "suffers" from narcissistic personality disorder, trying to change him is a waste of time. Even if he was a normal person, I see no rational reason for him to change his behavior given how successful he is.
jarek-foksa··on What is happening to jobs? Separating AI hype from reality
> General agents (OpenClaw, ...) started working even later than that.

There is nothing special about the OpenClaw thing other than the enormous astroturfing campaign that benefited various "crypto" influencers and other scammers. Anyone who endorses it is either manipulated or trying to manipulate you.

jarek-foksa··on Sam Altman may control our future – can he be trusted?
> the company actually is ethical and safety conscious everywhere

I wonder what Anthropic tries to achieve by spreading such blatant lies with their bot accounts. I'm definitely not buying anything from a company so morally corrupt to smear the competition while claiming to be somehow "ethical". And I'm not talking just about this thread, it's a recurring pattern on Reddit.

jarek-foksa··on I verified my LinkedIn identity. Here's what I handed over
LinkedIn support will also blatantly lie to you when you ask them whether Persona is GDPR compliant and needed to activate your account.

Last year I was trying to setup a business LinkedIn page for SEO purposes, which meant I also had to create a personal account. After being told several times that I absolutely need to scan my ID card with that dodgy app I simply replied that I can't do it due to security concerns. After several weeks they unlocked my account anyway, but I suspect this would not happen if algorithms determined that I actually needed that account to find a job and pay my bills.

jarek-foksa··on Show HN: VectorNest responsive web-based SVG editor
How much time did it take you to build it? For the past several years I have been working full time on an SVG editor myself (https://boxy-svg.com) and I get a bit anxious when I see what LLMs are capable of nowadays.
jarek-foksa··on The Codex App
Customers simply don't care. I don't recall a single complain about RAM or disk usage of my Electron-based app to be reported in the past 10 years.

You will be outcompeted if you waste your time reinventing the wheel and optimizing for stuff that doesn't matter. There is some market for highly optimized apps like e.g. Sublime Text, but you can clearly see that the companies behind them are struggling.

jarek-foksa··on An interactive guide to SVG paths
GodSVG: https://www.godsvg.com/

Boxy SVG: https://boxy-svg.com/#demo-elements

Repath Studio: https://repath.studio/

MacSVG: http://macsvg.org

jarek-foksa··on Show HN: Hyvector – A fast and modern SVG editor
> In SVG handling of clip paths is quite cumbersome and not very intuitive.

Modern web browsers now support "clip-path" CSS property with inline/shorthand values which are much more convenient to use than <clipPath> element. There are some examples on MDN [1]. I haven't performed extensive tests yet but they seem to be working just fine with SVG objects.

[1] https://developer.mozilla.org/en-US/docs/Web/CSS/clip-path

jarek-foksa··on Show HN: Hyvector – A fast and modern SVG editor
"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.

jarek-foksa··on Show HN: Hyvector – A fast and modern SVG editor
If I were to build a web-based vector graphics editor from scratch today, I would make it work internally with a "sane" subset of SVG such as SVG Micro [1].

This way you get a fast and reliable rendering engine for free (including support for MathML and HTML objects), you can easily import third-party SVG assets with a normalizer such as SVGO and you don't need to bother with all the convoluted special cases.

[1] https://github.com/linebender/resvg/blob/main/crates/usvg/do...

jarek-foksa··on Nice things with SVG
From the table of contents this looks like a book sponsored by and written to promote GreenSock. Which would be fine if the title was not misleading. Apparently SMIL is mentioned only in one chapter as "not suggested" solution.
jarek-foksa··on Nice things with SVG
Inkscape is the only major vector graphics editor that relies on SVG as its native file format. Most other apps are merely allowing you to import/export SVG files which is often a lossy process (e.g. vector objects with filter effects might get rasterized).

SVGator is focused primarily on animation and it's rather pricey. Boxy SVG might be a better choice if you are looking for a web-based SVG editor (disclaimer: I'm the developer).

jarek-foksa··on Nice things with SVG
Entities seem to be resolved at parse time, so they are more like a preprocessor directives. <use> is much more powerful as all instances are "live" and updated dynamically when you change the original object.

If I recall correctly, the primary motivation behind <symbol> and <use> was interoperability with corresponding primitives in Adobe Illustrator.

jarek-foksa··on Firebase Studio
For me the biggest missing block is the text search API. It's ridiculous that you can't add a basic search input to your Firebase-based website unless you use TypeSense, Algolia or some other additional database that you have to manage and keep in sync.

Despite all the recent enshitification, I can't think of any alternative solution that would come even close to what Firebase has to offer. Authentication API is especially hard to beat (cheap and very easy to integrate).

jarek-foksa··on Inkscape 1.4
I'm working on Boxy SVG which combines vector drawing and animation tools: https://boxy-svg.com
jarek-foksa··on SVG Triangle of Compromise
Fragment identifiers in "src" attribute seem to be supported by all modern browsers, but now I realized my example was wrong - you can reference <view> elements, but not <symbol> elements directly.

To make it work you would have to either replace <img src="sprite.svg#green"/> with <svg ...><use href="sprite.svg#green"></use></svg> or add views to the sprite file:

  <?xml version="1.0" encoding="utf-8"?>
  <svg viewBox="0 0 500 500" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
    <defs>
      <symbol id="recolorable" viewBox="0 0 100 100">
        <rect width="100" height="100" style="fill: inherit;"/>
      </symbol>
      <view id="blue"  viewBox="  0 0 100 100"></view>
      <view id="green" viewBox="100 0 100 100"></view>
    </defs>

    <use x="0"   y="0" width="100" height="100" style="fill: blue;"  xlink:href="#recolorable"/>
    <use x="100" y="0" width="100" height="100" style="fill: green;" xlink:href="#recolorable"/>
  </svg>
jarek-foksa··on SVG Triangle of Compromise
Boxy SVG editor comes with built-in support for creation and editing of SVG icon sprites.

You can play with a sample SVG sprite on https://boxy-svg.com/#demo-symbols. Individual icons are shown under "Defs Panel -> Symbols". To edit an icon just double-click its thumbnail. To make part of an icon recolorable, select that part and then click "Fill Panel -> Paint -> Type -> Inherit".

You could then create separate symbols which contain a recolored instance of the original symbol. The underlying markup will look something like this:

  <?xml version="1.0" encoding="utf-8"?>
  <svg viewBox="0 0 500 500" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
    <defs>
      <symbol id="recolorable" viewBox="0 0 100 100">
        <rect width="100" height="100" style="fill: inherit;"/>
      </symbol>
      <symbol id="blue" viewBox="0 0 100 100">
        <use width="100" height="100" style="fill: blue;" xlink:href="#recolorable"/>
      </symbol>
      <symbol id="green" viewBox="0 0 100 100">
        <use width="100" height="100" style="fill: green;" xlink:href="#recolorable"/>
      </symbol>
    </defs>
  </svg>
Finally, use a fragment identifier to show a specific icon in HTML:

   <img src="sprite.svg#green">
jarek-foksa··on SVG Viewer – View, edit, and optimize SVGs
The flash of unstyled SVG can be fixed by setting explicit view box (the "viewBox" attribute) and viewport (the "width" and "height" attributes): https://www.sarasoueidan.com/blog/svg-style-inheritance-and-...
jarek-foksa··on SVG Viewer – View, edit, and optimize SVGs
You might also find Boxy SVG useful as it has built-in support for symbol-based icon sprites: https://boxy-svg.com/#demo-symbols
jarek-foksa··on Canva has acquired Affinity in an effort to compete with Adobe
There is also Graphite (https://graphite.rs/) which, unlike Gimp, has a modern architecture and very ambitious goals (Blender for 2D basically).
jarek-foksa··on Canva has acquired Affinity in an effort to compete with Adobe
> Inkscape is passable but aspects like filters are obtuse to use and that's largely because it's trying to be a good compliant SVG editor and not necessarily a good vector graphics editor.

It is actually possible to build an intuitive UI for filters while staying compliant with SVG. You just have to abstract away the low level SVG primitives ("feColorMatrix", "feComponentTransfer", etc.) with user-friendly presets such as "Sepia" or "Drop shadow". I actually created a mockup for such UI in Inkscape long time ago [1] and I eventually implemented it in Boxy SVG [2].

Advanced filter editing could be improved by switching from tree-based to node-based UI, in similar fashion to e.g. Jasc WebDraw [3].

[1] https://wiki.inkscape.org/wiki/SpecSimpleFiltersUi

[2] https://boxy-svg.com/blog/19

[3] https://www.w3.org/Graphics/SVG/webdraw02.png

jarek-foksa··on Show HN: I made a free animator. Think Adobe Illustrator but for animation
For any non-trivial editor you will need an object model that abstracts away the low level drawing functions and manages state.

I think fabric.js is worth checking as its source code is well organized and documented. It's not a small project though and the latest version was rewritten in TypeScript: https://github.com/fabricjs/fabric.js/tree/master

jarek-foksa··on Show HN: I made a free animator. Think Adobe Illustrator but for animation
> I wish Inkscape could do it or there was an Inkscape-like animation tool, that does not hide but rather embraces the underlying SVG code.

This is basically what I'm trying to achieve with Boxy SVG project: a vector graphics editor with UI similar to Inkscape, but focused primarily on SVG editing. It also allows you to easily switch between the code ("Elements") and timeline ("Animations") views: https://boxy-svg.com/blog/21

jarek-foksa··on Show HN: I made a free animator. Think Adobe Illustrator but for animation
For pure SVG-based animations you should take a look at Boxy SVG: https://boxy-svg.com/blog/21
jarek-foksa··on SVG images can contain JavaScript
SVG animation elements are now mostly supported by all modern browsers. You can even use `transform-origin` and `transform-box` CSS properties to control the origin point (this was a major pain point in the past). I think "paced" interpolation is the only important feature that is still missing.
jarek-foksa··on Rough.js: Create graphics with a hand-drawn, sketchy, appearance
I used it to implement the "Sketchify" generator in Boxy SVG (https://boxy-svg.com/ideas/23). It is especially nice that Rough.js has very few dependencies and can run inside a web worker.
jarek-foksa··on SVG Tutorial
Firefox support is tracked on https://boxy-svg.com/ideas/227/firefox-browser-support, I think it will be added next year.
jarek-foksa··on SVG Tutorial
There is also Boxy SVG (https://boxy-svg.com) which combines both designer and developer oriented functionality and uses SVG as its native file format.

Unlike Illustrator/Sketch/Inkscape it can also create and manipulate SVG animation elements (https://boxy-svg.com/blog/21) - a very powerful feature which is now supported by all major browsers.

jarek-foksa··on Inkscape is hiring: Accelerating the GTK4 migration
I'm currently working on WebKit support in Boxy SVG (https://boxy-svg.com/ideas/95) and SVG rendering performance seems to be actually better than in Inkscape - especially when transforming many objects simultaneously and when manipulating objects with filters applied.

Igalia has made some massive improvements to the SVG engine in WebKit recently: https://wpewebkit.org/blog/05-new-svg-engine.html

jarek-foksa··on Slovio, an international simplified Slavic language
Given the current circumstances, why is this the top story on HN? Panslavism is basically Russian imperialism in disguise.
Page 1 of 11Next →