Another JavaScript Runtime
You can find the latest jstime binary on the release page
Alternatively you can install with cargo
$ cargo install jstime$ jstime
Welcome to jstime!
>>$ cat hello-world.js
console.log("hello world");
$ jstime hello-world.js
hello world
Check out the README.md for jstime-core for instructions on how to embed jstime in your rust application!
jstime provides a minimal and performant JavaScript runtime with essential APIs.
For detailed documentation on all supported features, see Documentation.
👉 Check out the examples/ directory for runnable code samples!
- Console API:
console.log(),console.error(), etc. - Timers:
setTimeout(),setInterval(), and clearing functions - Fetch API: Modern HTTP client with
fetch(),Headers,Request,Response - Streams API:
ReadableStream,WritableStream,TransformStreamfor streaming data processing - URL API:
URLandURLSearchParamsfor URL manipulation - Performance API: High-resolution timing with
performance.now() - Microtask API:
queueMicrotask()for fine-grained async control - Structured Clone API:
structuredClone()for deep cloning of complex objects - Text Encoding API:
TextEncoderandTextDecoderfor UTF-8 encoding/decoding - Crypto API:
crypto.getRandomValues(),crypto.randomUUID(),crypto.subtle.digest()for cryptographic operations - Process API:
process.env,process.argv,process.cwd(),process.exit()for process information - File System API: Complete Node.js-compatible
fs/promiseswithreadFile(),writeFile(),mkdir(),stat(), and more - WebAssembly: Full WebAssembly support for running high-performance compiled modules
- ES Modules: Full support for
import/exportwith top-level await - Modern JavaScript: All ES2015+ features via V8 engine
jstime includes comprehensive test coverage including conformance tests for standard APIs:
- Console API - WHATWG Console Standard compliance
- Fetch API - WHATWG Fetch Standard compliance
- Streams API - WHATWG Streams Standard compliance
- Performance API - W3C High Resolution Time compliance
- URL API - WHATWG URL Standard compliance
- Timers API - WHATWG HTML Standard timers compliance
- Structured Clone API - HTML Standard structured cloning compliance
Run all tests with:
cargo testFor more details on conformance testing, see core/tests/CONFORMANCE_TESTS.md.
Interested in contributing? We'd love to have you! ❤️
Check out these resources:
- CONTRIBUTING.md - Get started with development
- ARCHITECTURE.md - Learn how jstime is built
- CODE_OF_CONDUCT.md - Community standards
We welcome contributions of all kinds: bug fixes, features, documentation, examples, and more!
For information about the governance of the jstime project, see GOVERNANCE.md.
- MylesBorins - Myles Borins (he/him)
- bengl - Bryan English (he/him)
- bdougie - Brian Douglas
- codebytere - Shelley Vohr
- devsnek - Gus Caplan
- EstebanBorai - Esteban Borai
- jalafel - Jess Tran
- solumos - Tom Hadley