My favorites | Sign in
Project Logo
                
Search
for
Updated Oct 30, 2009 by sgbeal
Labels: Topic-Project, Featured
HomePage  
v8-juice project introduction page

Welcome to v8-juice!

v8-juice (v8 (J)avaScript (U)serland (I)ntegratable (C)omponents (E)mporium) is a C++ library for extending the v8 JavaScript engine. It includes components such as a plugins API, a type-conversion API, utilities for creating new JS-side classes from C++, and for binding near-arbitrary native functions to arbitrary JS objects. It has extensive API documentation, and supplemental documentation can be found via the Wiki link at the top of this page.

To any members of the Campbell Soup Company: i would really appreciate it if you guys don't sue me over this project's name :-D. It's all in good fun! (And it took me 10 minutes to come up with a project name for which 'JUICE' is an appropriate acronym. So i beg you, please don't let that effort be in vain!)

Code/Project status

v8-juice is, at this point, primarily an experimentation ground, and not a product which aims to have a "1.0" release (it uses the release date as its version number). As the library is still very new (it was born in late February, 2009), it is still in a high state of flux and may contain any number of (possibly incompatible) changes between versions. That said, i like to keep my own client code working, and will try not to make any major changes which break things unless there is a good reason to do so. Also, the core library parts (primarily the type conversions, which are the most-central component) are based off of much older implementations i wrote for SpiderMonkey, and they've had a stable interface for some years now.

Related work

  • cproxyv8 is very similar in purpose to v8-juice, and appears to provide largely the same feature set for binding C++ types to v8.
  • v8cgi encapsulates features for hosting web applications written in JavaScript.
  • Flusspferd is a similar library written for use with the SpiderMonkey JavaScript engine.

License

The code base contains code of several licenses:

The whole library would be Public Domain, but Google Code neither recognizes nor allows Public Domain as a project license. Since v8-juice is an extension of v8, which has a BSD license, it is assumed that a BSD license will be acceptable to potential v8-juice users who have accepted v8's licensing terms.

Users needing other license conditions may request them from the code author(s). Tip: for any v8-juice code where i'm the attributed author (Stephan Beal), you've got blanket permission to do whatever the hell you want to with your copy of the code (including re-licensing it). The exception to that is any code which necessarily adopts viral licensing conditions from 3rd-party libraries it uses, such as the GNU Readline plugin.

Author

v8-juice's primary author is Stephan Beal (http://wanderinghorse.net/home/stephan/). v8-juice user Rob Tsuk continues to offer insightful suggestions which lead to new features and improvements in older features.

Project Stats

Provided by Ohloh.net:

Those stats would appear, however, to be largely skewed. As of now (April 2009), the tree (including plugins) contains code which took less than a year of part-time work, and not the 9 years Ohloh calculates. (Maybe it's because i use the terribly efficient XEmacs as my editor.)


Sign in to add a comment
Hosted by Google Code