GyaanSetu JavaScript

JavaScriptとTypeScriptのエコシステム。

100 articlesDeep, practical knowledge

Node.jsで開発をしていると、最初はエラーハンドリングが驚くほど簡単に感じられることがあります。ルートをtry-catchで囲み、送信する...

Node.jsで開発をしていると、最初はエラーハンドリングが驚くほど簡単に感じられることがあります。ルートをtry-catchで囲み、500ステータスコードを返し、その後の対応はクライアントに任せるだけです。…

JavaScript · 5 分で読めます

プレイヤーは些細な技術的問題でプレイを台無しにされることを嫌う。足場はクリアで、タイミングも完璧だった。それなのに、ゲームは彼らを脱落させた。

プレイヤーは些細な技術的問題でプレイを台無しにされることを嫌う。足場はクリアで、タイミングも完璧だった。それなのに、ミスをしたからではなく、ブラウザが……という理由で、ゲームは彼らを脱落させたのだ。

JavaScript · 6 分で読めます

新しいTypeScript Mutateラッパーにより、Supabase-JSの「サイレントな失敗」が露呈

軽量なTypeScriptラッパーの導入により、開発者はsupabase-jsが返す`error`フィールドの処理を強制されることになります。これにより、書き込み失敗がすべてSentryに記録されるようになり、データが更新されていないにもかかわらず表示されてしまうUIの「成功」バッジを防ぐことができます。

JavaScript · 4 分で読めます

SolidJS 2.0により、データ更新中もReactチームはUIの安定性を維持できます

SolidJS 2.0は、Promiseがファーストクラスのリアクティブ値として扱われるネイティブな非同期データモデルを導入しています。これにより、初回ロード時のみフォールバックが表示され、その後のデータ再取得時には既存のDOMが画面上に保持されるため、ReactのSuspenseで発生するようなスピナーのちらつきを解消できます。

JavaScript · 5 分で読めます

Reactチームは、長いタスクの分割とstartTransitionの活用により、INPを200ms未満に削減

Lighthouseのスコアが完璧であっても、実際のユーザーのInteraction to Next Paint (INP) は500msを超えることがあります。scheduler.yieldによる長いタスクのチャンク化、startTransitionによる非緊急な更新のラップ、そしてオフスクリーンDOMの削減を行うことで、INPを「高速」の基準である200ms未満に抑えることが可能です。

JavaScript · 2 分で読めます

Rustによる書き換えで、pnpm v12 Alphaがウォームインストールの時間を381msから12msに短縮

新しいネイティブRustバイナリにより、ウォームインストールの時間は30分の1に短縮され、キャッシュなしのインストールは40ms、フルツリーのインストールは2.2秒まで高速化されます。CLIフラグやロックファイル形式はそのまま維持されるため、CIパイプラインの大幅な高速化が期待できます。

JavaScript · 2 分で読めます

Auto-AnimateがMarko 6にコード不要のリストアニメーションを追加

新しい @formkit/auto-animate/marko パッケージは npm 経由で導入でき、リストの親要素を <AutoAnimate> でラップするだけで、MutationObserver を使用して追加、削除、並べ替えをアニメーション化します。追加の JavaScript やライフサイクル・フックは一切必要ありません。

JavaScript · 2 分で読めます