Hacker News new | past | comments | ask | show | jobs | submit login

I use svg all the time to make tiny web interfaces for embedded systems. When the entire web app has to fit in 350k, you don't have space for gif's or jpg's.

Had to do almost the same thing in 2013 with internet lightbulbs. I had to draw a page without buffering as even page's full html was bigger that MCU's ram

On the other hand: http://www.oreilly.com/gnn/gnnhome.html

HTML plus 11 images in just 26KB.

If your embedded system only has 350 kB of space for your app how on earth do you fit a browser in there? Or do you only use the 'static' features of SVG?

Usually this is done in a 'Bring Your Own Device' scenario, where the user has a standard mobile/tablet that the UI is shown on. Using a webapp served by the embedded device allows a zero-install workflow, and zero-config (assuming network connectivity is taken care of).

Ah I see. I was imagining something with its own display, like a meeting room screen.

The embedded system only contains the web _server_. The user has the browser on their desktop/mobile system.

That's very interesting. Would be cool to see a generalized example of the kinds of interfaces you're building.

The most impressive rabbit I've pulled out of the SVG hat in this regard is being given a 2.1MB logo and told that it had to appear full screen during the log in and be "crisp and not all jaggy".

Did it in about 900 bytes.

With inkscape?

You got it. Imported the jpg and traced it with Inkscape. Hand optimized the SVG and inlined it right into the html of the login page.

Logos are typically shipped in SVG or Adobe Illustrator format aren't they? Even the old style ones had technical specifications. Seems odd you'd have to hand trace a JPEG.

Ha! Yeah. I think maybe you and I might travel in slightly different circles.

interesting use case for super small performant applications. Can you give us a screenshot it would be nice to see it in the wild.

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact