console.lealog();

@leader22のWeb系に関する勉強めもブログですのだ

vercel/edge-runtime のコードを読む

初手からREPLがついてたりと、なかなか洗練されてそう・・ってのが第一印象。

What is Edge Runtime | Edge Runtime

あとは`cloudflare/miniflare`のコードを読んだ身として、どういう実装になってるんやろ?ってのも気になったので。やはりNode.jsの`vm`を使ってるのか、はたまた未知のテクノロジーか・・・!

読んだのは最新の・・というか、いま時点ではまだ1コミットしかなかった。

https://github.com/vercel/edge-runtime/commit/0b11a95e2f470d278db27982e4905febc6ac9bb7

続きを読む

html-rewriter-wasmでHTMLをパースする

HTMLファイルをパースして、

  • 特定の文字列を抜き出したり
  • 特定の属性を書き換えたものを書き出したり

ってことをやりたい時、今までは`cheerio`を使うことが個人的には多かった。

GitHub - cheeriojs/cheerio: Fast, flexible, and lean implementation of core jQuery designed specifically for the server.

懐かしい`jQuery`的な記法で操作できる・・とはいえ、もはや`jQuery`のことぜんぜん覚えてなくて、生DOMのAPIばっか使っちゃったり。
かといって、`cheerio`が内部で使ってるHTMLのASTパーサーである`parse5`や`htmlparser2`をそのまま使うのは、ローレベルすぎて乗り気じゃなかったり。

というところで、なんか代用できるものはないかな?って思ってたところで、`HTMLRewriter`のことを思い出したという話。

続きを読む

Astro のコードを読む Part.3

Astro のコードを読む Part.2 - console.lealog();

これの続きであり、最後の記事です。

2週間ちょいでバージョンが`1.0.0-beta.27`から、`1.0.0-beta.33`になり、この時点でのハッシュは`51db2b9b4efd899bdd7efc481a5f226b3b040614`でした。

まもなくメジャーバージョンがリリースされることもあり、これが最後のコードリーディング。

残してきたビルドコマンドまわりと、Partial Hydrationの仕組みまわりを読む。

続きを読む

LeetCodeのEasyな問題をぜんぶRustで解こうとしていた

けど、ここ最近あまり意義を感じていないことに気がついたので、キリ番になった記念にやめることにした。

いちおう節目としてメモを残しておく。

続きを読む