web-platform-tests / web-platform-tests/interop

Temporal API

Open
#1,381 4 comments 82 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

focus-area-proposal
Dominant language
JavaScript
Stars
524
Forks
35
Avg merge
1d 4h
Merged PRs (30d)
10

Description

Description
Description

The Temporal API is the modern replacement for the legacy Date object in JavaScript. It provides immutable date/time types, proper time zone support, calendar systems, and nanosecond precision.

Temporal has reached Stage 4 in TC39 and is already shipping in Chrome/Edge and Firefox. Safari/WebKit still lacks full support (or has incomplete support). This creates a significant interoperability gap for a fundamental language feature that developers have been waiting for for many years.

Because Temporal is designed as a full replacement for Date, incomplete support forces developers to either:

  • Continue using the broken Date API
  • Ship large polyfills
  • Use feature detection + dual code paths

Making Temporal fully interoperable across all major engines would remove one of the longest-standing pain points in the JavaScript language.

Specification
web-feature

https://web-platform-dx.github.io/web-features-explorer/features/temporal/

Tests

Primary test suite lives in Test262:
https://github.com/tc39/test262/tree/main/test/built-ins/Temporal

There are thousands of tests covering the API. While Interop traditionally relies on WPT, Test262 is the authoritative suite for this language feature and is already used by all major engines.

Current Implementation Status (as of September 2026)
  • Chrome / Edge: Shipped (Chrome 144+)
  • Firefox: Shipped (Firefox 139+)
  • Safari / WebKit: Not supported in stable. Support was added in Safari Technology Preview 249 (August 2026) — implementation is in progress but not yet in a stable release.
Additional Signals

Browser bugs:

Developer demand:

  • Temporal has been one of the most requested JavaScript features for years (State of JS surveys, GitHub discussions, Stack Overflow, Twitter/X).
  • Previous Interop proposal for 2026: https://github.com/web-platform-tests/interop/issues/1022 (closed, not selected).
  • Heavy use of polyfills (e.g. @js-temporal/polyfill) indicates strong real-world demand.

Why it matters for Interop:

  • Core language feature (not a niche CSS/API).
  • High developer frustration with the current Date API.
  • Already mature (Stage 4 + extensive Test262 coverage).
  • Shipping in two engines already — the remaining gap is mainly Safari.
Suggested Focus

Full interoperability of the Temporal namespace and all its main types:

  • Temporal.Instant
  • Temporal.ZonedDateTime
  • Temporal.PlainDate / PlainTime / PlainDateTime
  • Temporal.Duration
  • Temporal.TimeZone / Calendar support
  • Temporal.Now
Specification

https://tc39.es/proposal-temporal/

web-feature

https://web-platform-dx.github.io/web-features-explorer/features/temporal/

Test Links

No dedicated web-platform-tests currently exist for Temporal. The primary and most comprehensive test coverage lives in Test262: https://github.com/tc39/test262/tree/main/test/built-ins/Temporal

Porting or mirroring the key Test262 scenarios into web-platform-tests would likely be needed for Interop scoring — happy to discuss the best approach with the Interop team if this proposal moves forward.

Additional Signals
Browser Bugs
Size and Current State of the Feature

Temporal reached TC39 Stage 4 in March 2026 (part of ECMAScript 2026). Shipping natively in Chrome/Edge 144+ and Firefox 139+. It's a large namespace (Instant, ZonedDateTime, PlainDate/PlainTime/PlainDateTime, Duration, TimeZone/Calendar support, Now) designed to replace the legacy Date object.

Developer Surveys / Other Developer Sentiment
  • Consistently ranked among the most-wanted JavaScript features in State of JS surveys over multiple years.
  • Previous Interop 2026 proposal: https://github.com/web-platform-tests/interop/issues/1022 (closed, not selected).
  • Heavy real-world reliance on polyfills (e.g., @js-temporal/polyfill) is itself a signal of pent-up demand.
Site Breakage and Workaround

Sites currently work around missing native support either by continuing to use the error-prone Date API or by shipping large polyfill libraries—both workarounds developers want to retire once Temporal is fully interoperable.

Likely Compatibility Impact

Temporal is a core language feature, not a niche API — full interoperability would remove one of JavaScript's longest-standing pain points and benefit essentially every app that handles dates, times, or time zones.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing the Interop issue format and the linked Temporal feature data, then inspect the Test262 Temporal suite and existing web-platform-tests coverage. Determine how the Interop project would define scoring for this large namespace and which scenarios need WPT coverage. Done means an agreed scope, test plan, and interoperability criteria for the listed Temporal types.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
testing-qa, web-dev
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.