I have been writing about Temporal for five years and it's finally approved as an official standard in JavaScript, so I took a moment to look back at the highs and lows, the thrills and spills and why it took so long to replace what I will never get tired of calling "our broken Date object"
I have been writing about Temporal for *such a long time* I talked to @b.trl.sn in 2021 about everything that was wrong with "our broken Date object" and how Temporal would fix that, but I did say it would have to wait on IETF work that wouldn't be done till 2022 thenewstack.io/javascript-f...
Temporal was already at stage 3 in 2021, which in hindsight was probably premature; in May 2023 the IETF work was almost done and @littledan.dev was hopeful that Temporal would ship in at least one browser, not least because it got so many votes to be considered for Interop
by June 2023 I was calling Temporal "almost ready for adoption" (probably quoting @robpalmer.bsky.social) when I took a look at other big features and the way JavaScript approaches standardisation generally thenewstack.io/whats-next-f...
by 2024, I was noting that Temporal might have to move back to the newly introduced stage 2.7 (added to reduce the burden of writing tests while a feature spec is still in flux); that didn't happen because the issue wasn't the tests but the size and scope of a feature that's bigger than ES6
in fact, in July 2024 @littledan.dev was holding out hope that Temporal might make it for ES2025 as one of the big features that were making progress and only needed "the last finishing touches"; of course, for a really big project, even the finishing touches are pretty big
by October 2024, I thought Temporal was "in the home straight"; @robpalmer.bsky.social and I were cracking "it's about time for Temporal" jokes as he explained to me why it had taken so much time to get a new time and date standard ready and what was getting postponed to make it fit on a smartwatch
despite a huge amount of hard work, Temporal didn't make it into ES2025 and I didn't even name it as one of the features we'd been waiting for when I did my roundup (unless you looked at the URL of the list of those features!)
at the end of 2025, I got my hopes up again. I was so encouraged by @jason-williams.co.uk explaining all the progress being made, the cross-browser approach helping with that and @bkardell.com & @meyerweb.com's enthusiasm that I predicted Temporal would make it for ECMAScript 2026 - and it has!
I couldn't resist adding the 'how broken is Date' quiz @samwho.dev made to my piece; if you code in JavaScript and you haven't made yourself both laugh and cry by taking the quiz, it's the perfect thing to do while celebrating that it's now really, absolutely, finally time for Temporal!
and my thanks to everyone from @maggie.bsky.social onwards who talked to me about Temporal, explained why we needed it, explained the nuances of why it was taking so much time and kept on pushing to get the work done
JavaScript
ECMAScript
Temporal
Standards
TC39