Breach – A new modular browser
breach.cc
breach.cc
The reason I use other browsers (w3m, dillo, netsurf) alongside FF is because they're faster and take fewer resources. That's the point of a minimalist application. I wouldn't call an application minimalist if it has a behemoth running underneath, with a large attack surface, many hiding places for bugs, sucking up GBs of RAM.
For ad blocking, etc. I use http://someonewhocares.org/hosts/
In FF I use AdBlock and NoScript. I don't have Flash installed.
The best way to innovate in the browser market is indeed to use an existing rendering engine.
I have some idea. Besides, a rendering engine doesn't need to reinvent all of the wheels down to the metal. CSS is optional.
> The best way to innovate in the browser market is indeed to use an existing rendering engine.
Well, it's subjective. If you care about "markets", then indeed a custom rendering engine would be wasted effort. If you care about rendering engines, then "markets" are a waste of effort ;)
Though, both claim to be client oriented, and specifically focus around developers. In this category my gratitude to the Breach as it is actually open-source and leaves less mysteries behind the motives.
From what I understand, Breach is modular, so the core probably is as minimal as in Vivaldi. (Edit: Whoops, I understood you exactly in the wrong way.)
From the overall technical design principles, they look quite similar.
Call me a naive dreamer but I dream of a world where (almost) everything is done with web technologies. Why? Because I'm looking for an environment where applications, if not the underlying system, are written in a single, interpreted language.
There will always be a need for technologies that are very low-level (fast and efficient) or very high-level (experimental and AI) but I truly hope that the middle can start to converge on few reasonably good ideas. What languages can be feasibly replaced by js? I'm pretty sure the answer is, "Nearly everything except for C and assembly."
I like the web and I want my OS to be more like a browser.
The web, to me, is a hodge-podge of kludgy technologies that have too many gotchas. I like a pure environment where things are not so abstract that we cannot understand them. Instead of typing div, div, div, I want to type MenuBar, ToolBar, FluidGrid. Instead of fighting with Javascript to handle big numbers, dates or something as simple as equality properly, I like to use programming languages that haven't been ham-stringed because they've been designed by a committee.
In short, I like the power, purity and robustness of my native OS and I want browsers to disappear entirely.
edit: apparently work has shifted to Thrust[0]
If Github can't make Atom fast with their pools of money...
I just wish that sort of feature set were available for the actual platform rather than the giant rube-goldberg machine required to get JS to be performant.
Besides, the main engine, i.e. the rendering engine, the JS engine and other core low-level parts (all of Blink and V8) are all still implemented in C++.
Then again it's been implemented in JS before: http://en.wikipedia.org/wiki/XUL
Unlike Kivy, which is Python, you've chosen JS, so at least your UI is on a more naturally portable layer given that you have a browser runtime right there. Documenting your plumbing into the system libraries will be really critical. The JS community will hack every other piece of the system on their own, but user after user will shy away from the system plumbing because it's not what attracted them initially, so I would prioritize there.
Writing cross-platform UI's may be a pipe dream for now. OpenGL is headed towards a weird place with Mantle and Metal etc while OpenGL Next comes together. The HSA Alliance (Notably missing Nvidia and Intel) might offer some hope that CPU architectures and graphics API's (and GPGPU) will converge again, but right now, HTML5 with JS is probably the best we have for sheer everywhere.
Probably where I would diverge most sharply (and somewhat irreconcilably) with the web community and perhaps even the high-minded ideals of Mozilla is HTML/CSS, but the "superior" tools I find in Android are themselves relatively new. Do I wish that HTML/CSS/JS would go away? Yes, but without need of burial. A technology will displace it someday through sheer elegance that unicorns had not yet fathomed. If it's at all recognizable in what I'm using today, it's an early stage experiment.
I wonder how they implemented incremental layout efficiently in Javascript.
On a Unix platform, you must install python, make and GCC. The readme for node-gyp states that the easiest way to get these for OS X is to install XCode. Windows users must install at the very least a free version of Visual Studio and Python 2.7. There's also node-pre-gyp to precompile binaries, which I would vastly prefer as a user and a developer.
I suspect that ideology actually plays a larger part in these decisions than logistics. (EDIT: I could be wrong, but anyway they explain here that they need to move off of GTK+ before having a Windows build for some reason - https://github.com/breach/breach_core/issues/90)
I might just be missing something obvious...
To be able to compile native binaries, you need to just install Python 2.7 and Visual Studio. Depending on the version of Visual Studio that you have installed, you might have to pass an extra flag to npm when installing native packages that must be compiled. So, if you installed some version of Visual Studio 2012 or 2013 instead of the 2010 version, you might have to pass the "msvs_version" flag to npm like this: npm install socket.io --msvs_version=2012