タグ

2026年1月5日のブックマーク (3件)

  • React Compound Componentパターンの使いどころ

    はじめに Reactで複雑なUIコンポーネント(Select、Tabs、Accordion、Modalなど)を作成する際、大量のpropsを渡す「Props地獄」に陥ることがあります。 <Select options={options} value={value} onChange={setValue} placeholder="選択してください" renderOption={(option) => <CustomOption {...option} />} renderHeader={(selected) => <Header selected={selected} />} onOpen={() => {}} onClose={() => {}} // ...さらに多くのprops /> このようなAPIは認知負荷が高く、想定外のカスタマイズが困難です。 Compound Compone

    React Compound Componentパターンの使いどころ
    igrep
    igrep 2026/01/05
  • ブラウザのレイアウトエンジンを自作してみた

    前々から自作ブラウザを作ってみたかったんですよね。作ります。 今回はブラウザのGUI周りの、主にレイアウトの座標計算モジュールを自作しました。CSS のボックスモデル, Flex, Grid の座標計算というのが伝わりやすいでしょうか。 HTMLパーサ/CSSパーサ/CSSクエリエンジン/ペインティングも一部実装しましたが、レイアウト可視化のテスト用と割り切っていて、ちゃんと作ったのは主にレイアウトの座標計算周りになります。 作ったもの 雑なプレイグラウンド こんな感じです Terminal で Sixel を描画して Google を表示したもの。今回は主に座標計算周りの実装なので background-color やフォント周りは未実装なんですが、矩形だけでは自分の目視デバッグもしんどかったので、最低限のビットマップフォントをレンダリングできるようにしました。 リポジトリ npm:@m

    ブラウザのレイアウトエンジンを自作してみた
  • Web の維持への寄付 | blog.jxck.io

    Intro Web は誰のものでもなく、誰でも無料で使える。 しかし、その状態を維持するための費用が、かかっていないわけではない。 そこで、Web を生業にしている筆者としては、Web が壊れないための「維持コスト」をほんの一部でも負担するという意図をもって、寄付を行っている。 一括寄付 これまで、Web / Internet に関連する組織などへの寄付は、その都度ばらばらに行ってきた。 しかし、どこに寄付しているのかわからなくなってきたため、棚卸しをしつつ年始に一括して行うことにした。 また、寄付の対象も 15 の寄付先をリストアップし、5 ドルずつ寄付するようにまとめることにした。 寄付先 寄付先はガバナンスを維持する目的の組織を中心としている。また、筆者は「ブラウザがこれ以上減ると均衡が崩れる」という危惧を以前から持っているため、ブラウザ関連も対象とした。 今年の寄付先は以下の通りだ

    Web の維持への寄付 | blog.jxck.io
    igrep
    igrep 2026/01/05
    MozillaとInternet Archiveは私も時々やってますぞ