All Projects → sony → V8eval

sony / V8eval

Licence: mit
Multi-language bindings to JavaScript engine V8

Programming Languages

python
139335 projects - #7 most used programming language
ruby
36898 projects - #4 most used programming language
golang
3204 projects

Labels

Projects that are alternatives of or similar to V8eval

eaf-linter
🤪 A linter, prettier, and test suite that does everything as-simple-as-possible.
Stars: ✭ 17 (-94.88%)
Mutual labels:  v8
v8go-polyfills
Add polyfills to rogchap/v8go
Stars: ✭ 25 (-92.47%)
Mutual labels:  v8
Little Javascript Book
Early draft for The Little JavaScript Book
Stars: ✭ 305 (-8.13%)
Mutual labels:  v8
Framework
Advanced modding framework for multiplayer modifications
Stars: ✭ 21 (-93.67%)
Mutual labels:  v8
rust rewrite
A programming environment that aims to help people learn how to program in JavaScript, while giving them a tour on how old computers and their limitations used to be.
Stars: ✭ 26 (-92.17%)
Mutual labels:  v8
Javascriptengineswitcher
JavaScript Engine Switcher determines unified interface for access to the basic features of popular JavaScript engines (ChakraCore, Jering.Javascript.NodeJS, Jint, Jurassic, MSIE JavaScript Engine for .NET, NiL.JS, Microsoft ClearScript.V8 and VroomJs). This library allows you to quickly and easily switch to using of another JavaScript engine.
Stars: ✭ 265 (-20.18%)
Mutual labels:  v8
python-react-v8
⭐ Render React.js views server-side
Stars: ✭ 79 (-76.2%)
Mutual labels:  v8
Jk
Configuration as Code with ECMAScript
Stars: ✭ 322 (-3.01%)
Mutual labels:  v8
JustDraw
A Test for Android Canvas Painting with JavaScript Engine
Stars: ✭ 42 (-87.35%)
Mutual labels:  v8
Web Tooling Benchmark
JavaScript benchmark for common web developer workloads
Stars: ✭ 290 (-12.65%)
Mutual labels:  v8
V8Android
A demo APP for embedding V8 engine in Android APP
Stars: ✭ 45 (-86.45%)
Mutual labels:  v8
object-shape
Get a description of a JS object's shape.
Stars: ✭ 24 (-92.77%)
Mutual labels:  v8
Fibjs
JavaScript on Fiber (built on Chrome's V8 JavaScript engine)
Stars: ✭ 2,880 (+767.47%)
Mutual labels:  v8
browser-exploitation
A collection of curated resources and CVEs I use for research.
Stars: ✭ 71 (-78.61%)
Mutual labels:  v8
Webrtc Tutorial
📚 WebRTC 中文教程
Stars: ✭ 305 (-8.13%)
Mutual labels:  v8
Javet
Javet is Java + V8 (JAVa + V + EighT). It is an awesome way of embedding Node.js and V8 in Java.
Stars: ✭ 218 (-34.34%)
Mutual labels:  v8
Go V8
Go binding for v8
Stars: ✭ 255 (-23.19%)
Mutual labels:  v8
Memeye
👀 The eye of memory. A lightweight memory monitor and dashboard for Node.js application on development.
Stars: ✭ 332 (+0%)
Mutual labels:  v8
V8.js.cn
V8 官方网站中文翻译
Stars: ✭ 308 (-7.23%)
Mutual labels:  v8
Dvm
Deno Version Manager - Easy way to manage multiple active deno versions.
Stars: ✭ 271 (-18.37%)
Mutual labels:  v8

v8eval

PyPI version Gem Version GoDoc

Multi-language bindings to JavaScript engine V8.

Currently v8eval provides Go, Python and Ruby bindings to the latest V8 7.1 and supports Linux and Mac OS X. v8eval uses SWIG and can be extended easily for other languages.

Pre-installation

Linux

See Dockerfile.

Mac

See .travis.yml.

Installation

The installation takes several tens of minutes due to V8 build.

Go

v8eval requires Go 1.10 or later.

git clone https://github.com/sony/v8eval.git ${GOPATH}/src/github.com/sony/v8eval
${GOPATH}/src/github.com/sony/v8eval/go/build.sh install

In the case of Linux, you need to build your Go program with build.sh:

${GOPATH}/src/github.com/sony/v8eval/go/build.sh go build

Python

pip install v8eval

Ruby

gem install v8eval

Documentation

Go

See godoc.org.

Python

You can create the Sphinx documentation under python/docs.

python/build.sh docs

Ruby

You can create the YARD documentation under ruby/doc.

ruby/build.sh docs

Examples

Go

import "github.com/sony/v8eval/go/v8eval"

func Add(x, y int) int {
	var v8 = v8eval.NewV8()
	v8.Eval("var add = (x, y) => x + y;", nil)

	var sum int
	v8.Call("add", []int{x, y}, &sum)
	return sum
}

Python

import v8eval

def add(x, y):
    v8 = v8eval.V8()
    v8.eval('var add = (x, y) => x + y;')
    return v8.call('add', [x, y])

Ruby

require 'v8eval'

def add(x, y)
  v8 = V8Eval::V8.new
  v8.eval('var add = (x, y) => x + y;')
  v8.call('add', [x, y])
end

License

The MIT License (MIT)

See LICENSE for details.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].