Hacker News new | ask | show | jobs
by danpalmer 591 days ago
Interesting that they chose Electron. Cross platform is certainly enticing, but at this point I'd say that browsers are relatively heavyweight pieces of software that require careful optimisation to do well, even assuming you outsource the engine.
3 comments

If true, horse browser devs need to read the Security section on Electron docs:

> With that in mind, be aware that displaying arbitrary content from untrusted sources poses a severe security risk that Electron is not intended to handle.

https://www.electronjs.org/docs/latest/tutorial/security#pre...

I feel like they should’ve used Chromium.

Of anyone is making a browser in todays age, I would imagine starting with something like Servo would be best. There are far too many chromium based browsers.

A very minimal Rust-only browser with security and privacy in mind at every single step is completely missing from browsers today. Things like waterfox et al are enormous projects that take far too long for one person to audit the entire code base to ensure correctness. Something like the 'wireguard of browsers' in this regard is needed (single repo that one person can read over in a day and can be built with a single cargo build command). Even servo unfortunately falls just barely shy of this goal, but one can dream.

Ah so I think they embed Chromium separately to run the browser views. I don't believe they are rendering any web content, just that all the browser chrome (sorry, overloaded term) is in Electron.
I think Vivaldi (similar concept, though I haven't tried Horse yet) is also built with Electron. I discovered this because I found it frustratingly slow (the new tab page had a loading spinner!) and found out they made the UI in JavaScript.

It's a shame because I really liked the flexibility (I was a big fan of Opera back in the day), but since new tab is something I do thousands of times per day, that small lag was enough to make it a non-starter.

A browser inside a browser inside a browser...
Nested tabs with a twist.