console.lealog();

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

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で解こうとしていた

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

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

続きを読む

ソフトウェアアーキテクチャの基礎 読んだ

O'Reilly Japan - ソフトウェアアーキテクチャの基礎

分厚かった。

TL;DRとしては、

  • アーキテクトかくあるべしについて書かれた本
  • 実践的というよりかは、汎用的な話が広範囲で書かれてる感じ
  • 基礎って書いてるけど、いわゆる駆け出しエンジニア向けではない

って感じ。

一エンジニアがコード書きながら「ここのコードどうまとめよかっな〜」とか「あのフレームワークかな〜」っていうレベルというより、もっと上位のレイヤーで「サービス全体のアーキテクチャが〜」とか「構成として冗長性が〜」みたいな話。そもそもコードを書く開発者と、この本の対象であるアーキテクトは別の位置づけだったりする。

続きを読む