Cybozu Frontend Monthly #60

タイトル画像

イベント概要

サイボウズフロントエンドマンスリー は、サイボウズ社内で行っているフロントエンド情報共有会「フロントエンドウィークリー」の公開版です。

その月に気になったフロントエンドの情報を、サイボウズのフロントエンドエンジニアのメンバーが共有していきます。

このイベントのハッシュタグは #サイボウズフロントエンドマンスリー です。

※フロントエンドウィークリーとは

毎週火曜の 17:00 〜 18:00 で社内向けに行っているフロントエンドの気になる記事を紹介する会です。
2016年3月15日から行われています。

ZennのPublicationにてウィークリーのまとめを投稿していますので、ぜひこちらもご覧ください。 https://zenn.dev/p/cybozu_frontend

開催日

2025年07月29日

イベントページ

https://cybozu.connpass.com/event/360470/

メンバー


コンテンツ

👀 Notable Articles

Temporal 実装の近況(+ Date の Parse 挙動クイズ)

Temporal の実装は Firefox(SpiderMonkey)/Deno が先んじいてる状態ですが、そのほかのブラウザでも実装が着々と進んでいます。

https://ptomato.name/talks/tc39-2025-05/

特に、Chrome の利用する V8 では、既存の実装を見直し、 temporal_rs という Rust 製ライブラリを利用した実装が進められています。この temporal_rs は、Rust 製の実験的な JS エンジン Boa JS が作成しているライブラリで、Boa のメンバーや V8 の実装者などが関わっています。

日時は非常に複雑なドメインであり Temporal も例外なく非常に大きな仕様なので、このような共通実装がどう育っていくのか楽しみです。

また、少し Temporal の近況と逸れますが、Date の Parse 挙動についてクイズ形式で知れるページが公開されたので、そちらも紹介します。

既存の Date の Parse の処理は非常にヒューリスティックで統一的でない挙動が混在していることが解いてみると実感できるでしょう。そして Temporal が提案された時の背景の一つとして「Date の Parse 挙動がわかりにくい」点があることも強く同感できるはずです。

Next.js 15.4

Next.js 15.4 がリリースされました。

Turbopack の互換性向上や、全体的なパフォーマンスの向上がメインの変更として挙げられています。

また、今回のリリースノートでは、Next.js 16 についての言及が含まれており、

we are looking to lay the groundwork for our users to try it out in Next.js 16 this summer.

と記載があるため、今年の夏中の Next.js 16 のリリースに向けて準備が進められているようです。

予定されている機能については次のようなものが紹介されています。

特に、以前から名前だけは広まっていた PPR を含む Cache Components が楽しみです。

tsgolint

TypeScript ESLint チームで、typescript-go を利用した型情報を利用したリントルールの開発が PoC として行われていたようです。 typescript-eslint に実装されている 40 の型情報が必要なルールが実装されており、パフォーマンスも 20 - 40 倍程度になったようです。

tsgolint is 20-40 times faster than ESLint + typescript-eslint. パフォーマンスが改善した理由としては、以下の点があげられていました。

リポジトリ:https://github.com/typescript-eslint/tsgolint

README にある通り、TypeScript ESLint チームはこの実装を production ready にしていくつもりはないようなのですが、この実装を oxc チームが fork しました。oxc チームでは、この実装を oxlint 内で呼び出すことで今まで実現できていなかった型情報を利用したリントルールのサポートを実現していくようです。

リポジトリ:https://github.com/oxc-project/tsgolint
ドラフト実装:https://github.com/oxc-project/oxc/pull/12343

このドラフト実装を VSCode のリポジトリで試してみたところ、4000 以上あるファイルの解析が 3.2 秒で終わったようです。

no-floating-promises completes 4.4k files in 3.2 seconds, in the vscode repo. https://x.com/boshen_c/status/1946422425442509260

oxlint より先に型情報を利用したリントルールを実装し始めた Biome では、独自で型推論のエンジンを作るような方針を取っているので、oxlint とは大きくアプローチが異なることになりそうです。ちなみに、Biome はこの対応で Vercel からサポートを受けていましたがそのサポートは今月で終わったようです

型情報を利用したリントルール周りの動向は、まだまだ変化がありそうなので今後も注目して行きたいです。

Faster Type-Aware Lint Rules: Biome vs. Oxlint
https://www.solberg.is/fast-type-aware-linting

🗓 Monthly Articles

※AI によって整理・要約されています。

📖 Framework, Library

⚡️ Services

🖥 Browsers

💬 Languages

🤖 Runtimes

📝 Specifications

🦆 Others

フロントエンドエキスパートチームについて

https://speakerdeck.com/cybozuinsideout/frontendexpert-team