GyaanSetu JavaScript

JavaScriptとTypeScriptのエコシステム。

90 articlesDeep, practical knowledge

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

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

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 分で読めます

タイプライター効果は、まるで誰かが思考を声に出しているのをデジタル上で眺めているかのようです。テキストは一文字ずつ表示されます。

タイプライター効果は、まるで誰かが思考を声に出しているのをデジタル上で眺めているかのようです。テキストは、まるで本物の手がキーを叩いているかのように、一文字ずつ表示されていきます。あなたはそれを...

JavaScript · 7 分で読めます

Reactアプリケーションはコンポーネントから構築されており、それぞれのコンポーネントにはライフサイクルがあります。画面に表示され、nに反応します。

Reactアプリケーションはコンポーネントから構築されており、個々のコンポーネントにはライフサイクルが存在します。画面に現れ、新しい情報に反応し、やがて消え去ります。そのリズムについては、今は気にしないでください...

JavaScript · 3 分で読めます

誰も語らないDOMのボトルネック

誰も語らないDOMのボトルネック。1万件ものログエントリを読み込むサポートダッシュボード、あるいは、すべての連絡先を単一のスクロール可能なテーブルに表示しようとしているCRMを想像してみてください。Re…

JavaScript · 7 分で読めます

新しい言語を学び始めて、全力疾走できると思っていたのに、最初の一歩でつまずいてしまう……そんな感覚、ありますよね?

新しい言語を学び始めて、全力疾走できると思っていたのに、最初の一歩でつまずいてしまう……そんな感覚、ありますよね? Rustを学んでいた時の私が、まさにそうでした。JavaScriptで完璧に動作するユーティリティを……

JavaScript · 3 分で読めます

開発者には、鋭い刃さえあれば十分な場面で、多機能すぎる「スイスアーミーナイフ」を作り上げてしまう悪い癖があります。私たちは重厚なフロント

開発者には、鋭い刃さえあれば十分な場面で、多機能すぎる「スイスアーミーナイフ」を作り上げてしまう悪い癖があります。HTMLの最初の1行を書く前に、私たちは重厚なフロントエンドフレームワークに手を伸ばしてしまいます。私たちは…

JavaScript · 3 分で読めます

有益なプログラムは、最終的に必ず意思決定の局面に直面します。このボタンはフォームを送信すべきか、それともエラーを表示すべきか?このユーザーは...

有益なプログラムは、最終的に必ず意思決定の局面に直面します。このボタンはフォームを送信すべきか、それともエラーを表示すべきか?このユーザーは管理者ダッシュボードを見るべきか、それともゲストビューを見るべきか?JavaScriptは...

JavaScript · 3 分で読めます

フロントエンドのエントロピーは実在する。コードベースが一夜にして崩壊することはない。それは蓄積していくものだ。ある火曜日、日付フォーマットを...

フロントエンドのエントロピーは実在する。コードベースが一夜にして崩壊することはない。それは蓄積していくものだ。ある火曜日、日付フォーマット用のライブラリを追加する。その半年後、誰かがまた別のものを追加する。なぜなら…

JavaScript · 4 分で読めます