JavaScript Runtime
Query's runtime is a JavaScript runtime that allows you to run your JavaScript code in a serverless like environment in Rust. It is based on QuickJS JavaScript engine and uses rquickjs for bindings between Rust and the Quickjs JavaScript engine. It supports the ES2023 specification, including modules, asynchronous generators, proxies, and BigInt. It optionally supports mathematical extensions such as big decimal floating point numbers (BigDecimal), big binary floating point numbers (BigFloat), and operator overloading.
Runtime Compatibility
This package provides a compatibility layer for the runtime. It is based on the unjs/runtime-compat package.
WinterCG APIs
The WinterCG APIs are a set of Web Platform APIs agreed by the Web-interoperable Runtimes Community Group (WinterCG) to be interoperable between the different JavaScript runtimes.
- [✓] AbortController
- [✓] AbortController
- [✓] abort
- [✓] signal
- [✓] AbortSignal
- [✓] Blob
- [✗] ByteLengthQueuingStrategy
- [✗] CompressionStream
- [✗] CountQueuingStrategy
- [✓] Crypto
- [✓] randomUUID
- [✓] getRandomValues
- [✗] subtle
- [✗] CryptoKey
- [✓] DOMException
- [✗] DecompressionStream
- [✗] Event
- [✗] EventTarget
- [✓] File
- [✓] lastModified
- [✓] name
- [✓] webkitRelativePath
- [✓] FormData
- [✓] Headers
- [✗] ReadableByteStreamController
- [✓] ReadableStream
- [✓] @@asyncIterator
- [✓] ReadableStream
- [✓] cancel
- [✓] from
- [✓] getReader
- [✓] locked
- [✓] pipeThrough
- [✓] pipeTo
- [✓] tee
- [✓] ReadableStreamBYOBReader
- [✓] cancel
- [✓] closed
- [✓] read
- [✓] releaseLock
- [✗] ReadableStreamBYOBRequest
- [✓] ReadableStreamDefaultController
- [✓] close
- [✓] desiredSize
- [✓] enqueue
- [✓] error
- [✓] ReadableStreamDefaultReader
- [✓] cancel
- [✓] closed
- [✓] read
- [✓] releaseLock
- [✓] Request
- [✓] Response
- [✗] SubtleCrypto
- [✓] TextDecoder
- [✓] TextDecoder
- [✓] decode
- [✗] TextDecoderStream
- [✓] TextEncoder
- [✓] TextEncoder
- [✓] encode
- [✗] TextEncoderStream
- [✓] TransformStream
- [✓] TransformStream
- [✓] readable
- [✓] writable
- [✓] TransformStreamDefaultController
- [✓] desiredSize
- [✓] enqueue
- [✓] error
- [✓] terminate
- [✓] URL
- [✓] URLSearchParams
- [✓] WritableStream
- [✓] WritableStream
- [✓] abort
- [✓] close
- [✓] getWriter
- [✓] locked
- [✓] WritableStreamDefaultController
- [✓] WritableStreamDefaultWriter
- [✓] abort
- [✓] close
- [✓] closed
- [✓] desiredSize
- [✓] ready
- [✓] releaseLock
- [✓] write
- [✓] globalThis
- [✓] globalThis.atob
- [✓] globalThis.btoa
- [✓] globalThis.clearInterval
- [✓] globalThis.clearTimeout
- [✓] globalThis.console
- [✓] globalThis.crypto
- [✓] globalThis.fetch
- [✗] globalThis.navigator
- [✗] globalThis.performance
- [✗] globalThis.queueMicrotask
- [✓] globalThis.setInterval
- [✓] globalThis.setTimeout
- [✓] globalThis.structuredClone