Leko

Leko
/

GatsbyでReactコンポーネントをDynamic importしてCode Splitするwork around

 · 3 min read

前記事のGatsby 製サイトに Algolia のサイト内検索を実装するを実現するにあたって、色々ライブラリが増えるけどページのロード時間は増やしたくなかったので React Suspense(以下 Suspense)+ React.lazy + Dynamic import…

Gatsby製サイトにAlgoliaのサイト内検索を実装する

 · 5 min read

ブログをGatsbyに移行してからずっとサボっていたサイト内検索機能ですが、ゴールデンウィークで時間があったので実装してみました。なお、当記事はAlgolia自体の知識がある前提で書いてます。Algolia自体の説明やMiddleman…

Intl.NumberFormatでゼロ埋めや%表記などの数値表現を楽に実装する

 · 6 min read

Number#toFixed や Math.round/floor/ceil を駆使して表示用の値を整形することってないでしょうか。カンマ区切りをオレオレユーティリティ関数で実装したりそういったことを実現するライブラリを探したことはないでしょうか。ほとんどの JavaScript…

Dive into Deno:プロセス起動からTypeScriptが実行されるまで

 · 34 min read

Denoのコードを読んでみました。Rust に入門したばかりで基礎知識が足らず四苦八苦していますが、Deno のプロセスが起動してから TypeScript のコードが実行されるまでの仕組みについて愚直に読んでみたメモです。想定読者Deno の内部挙動に興味があるNode.js…

ChromeのBlink LazyLoadを有効にしたらページのロード時間が約10倍早くなった

 · 3 min read

Lazy load はよく知られた web サイトの高速化テクニックの1つですが、自前で lazy load を実装したりライブラリを使う必要がなくなる未来が実現しつつあります。Chrome のレンダリングエンジンBlinkが 画像や iframe の LazyLoad…

Gatsbyの記事にoEmbed準拠のコンテンツを埋め込めるようにした

 · 4 min read

(※↑ はただの記事用のサムネイル画像です)記事の中に URL を書くだけで oEmbed 準拠のコンテンツを埋め込めるようにしました。oEmbed を聞いたことない方はまずデモを見てみてください。oEmbed…

Node.jsの11.7.0からzlibモジュールでBrotli圧縮が使えるようになりました

 · 3 min read

以下の PR により、Node.js に Brotli 圧縮がサポートされました。— zlib: add Brotli support by addaleax · Pull Request #24938 · nodejs/nodeまだ master に入ったばかり(2019/0…

ブログをMiddlemanからGatsbyに乗り換えた雑感

 · 6 min read

2017年にこのブログはWordpressからMiddleman製に作り変えたのですが、この度MiddlemanからGatsbyへ移行しました。前回の移行の記事はこちらです。— Wordpressで運用していたブログをMiddleman+Netlifyに変更した | WEB…

プログラム内でdotenvを読み込むのをやめた話

 · 2 min read

dotenvというRuby発のOSSがあります。.envって名前のファイルに環境変数を列挙してライブラリを読み込むと、それらの値をプロセス内の環境変数として値を展開してくれるというツールです。 もちろんNode.js版の実装も存在します。Heroku…

lerna-changelogで始める頑張りすぎないリリースノート自動生成

 · 2 min read

hothouseというpackage.jsonとlockfileを更新してPR出すツールを公開するときに、「リリースノート頑張りたくないな」と思い、なるべく楽にそれなりのリリースノートを残せる方法を探った結果、lerna-changelogというLerna…