Requirements
Runtime
Section titled “Runtime”The same as @yarunoka/core: all date-time work happens through the
Temporal API
(ES2026) on the global Temporal object, and no polyfill is shipped.
The requirement is that Temporal is available — nothing else.
- Node.js 26 or newer has it built in.
- Any runtime without it satisfies the requirement with a polyfill your application installs once — see Installation.
Module format
Section titled “Module format”ESM only. Browsers load ESM natively, and Node.js 22 and newer can
require() a synchronous ESM module graph — one free of top-level
await, which this package is — from CommonJS code, so CommonJS
applications on the supported Node.js versions are not excluded.
Dependencies
Section titled “Dependencies”One peer dependency: @yarunoka/core. The draft’s exit and every
preview go through the engine, and making it a peer means they go
through the one engine instance your application already has — never a
second copy with its own idea of the language.
Nothing else: no framework, no UI library, no runtime dependency of
its own. The store is framework-agnostic on purpose — a React binding
is one useSyncExternalStore call, and other frameworks are equally
thin.
TypeScript
Section titled “TypeScript”TypeScript is optional — the package is plain ESM and works from
JavaScript as it is. For TypeScript users: Temporal is not yet part of
a versioned lib entry, so enable it explicitly in your
tsconfig.json until it lands in es2026:
{ "compilerOptions": { "lib": ["es2025", "esnext.temporal"] }}