Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

I am just messing around, trying to figure out how stuff works and right now I have a couple questions about HTML, JS and CSS engines.

I know there are two major JavaScript engines out there - V8 and JavaScriptCore (WebKit's JS engine as far as I know). Is that correct? And what are the main HTML + CSS renderers out there? Let's say I want to build a web browser using V8 (I saw it has some documentation and stuff + I like the way it works), what are the best options for me?

Partially another question. Is there any bare browser that uses V8 and runs on Ubuntu at least?

P.S. I am a Ubuntu user and prefer C++.

share|improve this question

closed as off-topic by gnat, GlenH7, Dynamic, MichaelT, Robert Harvey Jul 17 '13 at 17:18

This question appears to be off-topic. The users who voted to close gave this specific reason:

  • "Questions asking us to recommend a tool, library or favorite off-site resource are off-topic for Programmers as they tend to attract opinionated answers and spam. Instead, describe the problem and what has been done so far to solve it." – gnat, GlenH7, Dynamic, MichaelT, Robert Harvey
If this question can be reworded to fit the rules in the help center, please edit the question.

Can you provide link to the documentation you reference? –  ClintNash Jun 16 '12 at 22:12
What so you mean by "bare browser"? –  ysdx Jun 17 '12 at 6:57
@ysdx, Browser without much functionality except JS, HTML and CSS engine. –  Pius Jun 17 '12 at 7:27
@ClintNash, I was talking about the menu option 'Documentation' in developers.google.com/v8 –  Pius Jun 17 '12 at 7:29
I believe Uzbl is <del>exactly</del> what you're looking for - bare Webkit, though with JavaScriptCore, not V8. –  a sad dude Jun 17 '12 at 18:25

2 Answers 2

up vote 9 down vote accepted

JS engines [1, 2]:

  • v8
  • JavaScriptCore/SquirrelFish
  • SpiderMonkey (Mozilla, C++)
  • Rhino (Mozilla, Java)
  • Tamarin (Flash)
  • Chakra (IE9; not open source)

Rendering Engines:

  • Webkit
  • Gecko (Mozilla)
  • Presto (Opera, not open source, not usable standalone)
  • Trident (IE9)

A quite simple option would be to use Webkit as a rendering engine as it quite widely used in many different projects. Chrome/chromium is using v8 and runs on Ubuntu.

[1] http://en.wikipedia.org/wiki/JavaScript_engine

[2] http://en.wikipedia.org/wiki/List_of_ECMAScript_engines

share|improve this answer
I can see there is WebKit as well as GTK-WebKit (which is a GTK+ port). What does WebKit use for visualizing rendering's results? –  Pius Jun 17 '12 at 7:32
AFAI understand, you have core Webkit which is unconnected from any kind of UI/system layer. Then you have different bindings/ports for different UI libs/systems: Apple Cocoa, Qt, GTK … –  ysdx Jun 17 '12 at 13:20
Tamarin is an ActionScript, not JavaScript engine. –  a sad dude Jun 17 '12 at 18:18
@dude: ActionScript is a dialect of ECMAScript (just like JavaScript is). What's more, few years ago, it was expected to be used in Mozilla applications as its EcmaScript engine. –  ysdx Jun 17 '12 at 18:53
So, what does Webkit do apart giving you access to DOM library and stuff if it doesn't do rendering? –  Pius Jun 20 '12 at 8:47

Have you checked out Node.js? I only mention it because it fits your tech-trifecta: 1. JS, HTML, CSS 2. V8 3. and C++.

Not sure about building browsers, or rendering in particular.... Wikipedia gives a great history of the browser wars of 2010, as far as V8 goes. Names get crazy like SpiderMonkey, Rhino, and IE... may be an interesting history .

share|improve this answer
Isn't NodeJS just a JS engine build on top of V8? –  Pius Jun 17 '12 at 7:27

Not the answer you're looking for? Browse other questions tagged or ask your own question.