![sjs](https://raw.githubusercontent.com/saghul/sjs/master/docs/source/.static/sjs-logo.png)
Overview
Skookum JS, or sjs for short, is a JavaScript runtime focused on providing
comprehensive POSIX APIs.
The motivation for this project comes from answering the question "how would a
JavaScript runtime look like if there were no browsers?".
Features
- Small footprint
- Ecmascript ES5/ES5.1 compliant
- Some post-ES5 features
- Built-in Unicode support
- Tail call support
- CommonJS-based module loading system
- Support for native modules written in C
- Rich standard library
- Binary name 25% shorter than Node
See the full list here.
Documentation
Check it out here.
![Documentation Status](https://readthedocs.org/projects/sjs/badge/?version=latest)
Building
Skookum JS currently supports Linux and macOS. See compilation instructions here.
![Build Status](https://travis-ci.org/saghul/sjs.svg?branch=master)
License
Check the LICENSE file.
Author
Saúl Ibarra Corretgé (@saghul)
Contributing
Please see CONTRIBUTING.
Acknowledgements
sjs would not have been possible without some other projects existing. Some served
as a source of inspiration, some as a source of actual code, and the author would like to thank them all.
- Duktape: The engine that powers sjs. This project would not have been possible without Duktape. :hearteyes:
- Nodejs: World's most well known JavaScript runtime, definitely an inspiration.
- libuv: A lot of the cross-platform code was borrowed from here.
- Dukluv: Another JavaScript runtime combining Duktape with libuv.
- CPython: Python's canonical interpreter was an inspiration, specially for the standard library components.