https://github.com/devsnek/esvu
esvu is your one-stop shop for all implementations of ECMAScript.
https://github.com/devsnek/esvu
ecmascript installer javascript
Last synced: 2 months ago
JSON representation
esvu is your one-stop shop for all implementations of ECMAScript.
- Host: GitHub
- URL: https://github.com/devsnek/esvu
- Owner: devsnek
- License: mit
- Created: 2020-01-19T19:28:51.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2024-07-18T04:32:10.000Z (11 months ago)
- Last Synced: 2025-03-29T01:05:29.516Z (2 months ago)
- Topics: ecmascript, installer, javascript
- Language: JavaScript
- Homepage:
- Size: 217 KB
- Stars: 188
- Watchers: 8
- Forks: 27
- Open Issues: 14
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# esvu
esvu is your one-stop shop for all implementations of ECMAScript.
## Installation
```
$ npm i -g esvu
```esvu will attempt to respect `XDG_DATA_HOME`, and will fall back to the
home directory. You will need to add esvu's bin to your `PATH`, for
example `$XDG_DATA_HOME/.esvu/bin` or `/home/snek/.esvu/bin`.You may override the path entirely by setting the `ESVU_PATH` environment
variable.## Usage
The first time you run `esvu`, it will ask you which engines you wish to
install. After the first run, running `esvu` will update the engines you
selected.- `$ esvu`
Update all installed engines, or select engines to install
- `$ esvu install `
Install the engine ``
- `$ esvu uninstall `
Uninstall ``
- `$ esvu update `
Update ``. Like `install` but the engine must have been previously
installed.If you're using [eshost-cli][], you can run `eshost --configure-esvu` after
installing engines to make eshost automatically find the installed engines.| Engine | Binary Names | `darwin-x64` | `darwin-arm64` | `linux-ia32` | `linux-x64` | `linux-arm64` | `win32-ia32` | `win32-x64` |
| ------------------ | -------------------------------- | ------------ | -------------- | ------------ | ----------- | ------------- | ------------ | ----------- |
| [Boa][] | `boa`, | ✅ | | | ✅ | | | ✅ |
| [engine262][] | `engine262` | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| [GraalJS][] | `graaljs` | ✅ | ✅ | | ✅ | ✅ | | ✅ |
| [Hermes][] | `hermes` | ✅ | ✅ | | | | | ✅ |
| [LibJS][] | `ladybird-js` | ✅ | ✅ | | ✅ | | | |
| [JavaScriptCore][] | `jsc`, `javascriptcore` | ✅ | ✅ | | ✅ | | | ✅ |
| [QuickJS][] | `quickjs`, `quickjs-run-test262` | ✅ | | ✅ | ✅ | | ✅ | ✅ |
| [SpiderMonkey][] | `sm`, `spidermonkey` | ✅ | ✅ | ✅ | ✅ | | ✅ | ✅ |
| [V8][] | `v8` | ✅ | ✅ | ✅ | ✅ | | ✅ | ✅ |
| [XS][] | `xs` | ✅ | ✅ | | ✅ | ✅ | | ✅ |Some binaries may be exposed as batch/shell scripts to properly handling shared library loading. Some binaries on
64-bit systems may be natively 32-bit.[Boa]: https://boajs.dev/
[eshost-cli]: https://github.com/bterlson/eshost-cli
[engine262]: https://engine262.js.org
[GraalJS]: https://github.com/graalvm/graaljs
[Hermes]: https://hermesengine.dev
[LibJS]: https://github.com/ladybirdbrowser/ladybird
[JavaScriptCore]: https://developer.apple.com/documentation/javascriptcore
[QuickJS]: https://bellard.org/quickjs/
[SpiderMonkey]: https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey
[V8]: https://v8.dev
[XS]: https://www.moddable.com/