OGP・メール・Slackなど意外と多いSVGが弾かれる場面と、Canvas APIを使ったブラウザ完結のPNG変換ステップを解説します。
$ devtools --philosophy
APIキー生成・SVGビューアー・ULID生成・カラーパレットなど、無料で使える開発者ツール集です。気になる仕様やエッジケースについては、記事でも詳しく解説しています。
ダッシュボードを見てみる$ ls tools/ --by-category
HOW IT WORKS
動く仕組みや、つまずきやすいエッジケースがなぜ起きるのかを調べて記事にまとめました。各記事から、対応するツールへ移動できます。
OGP・メール・Slackなど意外と多いSVGが弾かれる場面と、Canvas APIを使ったブラウザ完結のPNG変換ステップを解説します。
同じバイト列でもBase64とBase64URLで出力が違う場所は、文字置換・パディング有無・URLでの=の扱いの3か所あります。JWTのデコードが壊れる原因の大半はこの混同です。
通常のULID生成では同一ミリ秒内で順序が崩れます。monotonicFactoryが実際にどうランダム部分をインクリメントしているかをソースコードから読み、UUID v7との違いを整理します。
192.168.1.0/24を必要台数の異なる4部署に分割する例で、なぜ小さいサブネットから割ると後続のブロックが詰まらなくなるのかをアドレスのアラインメント条件から追います。
クエリ文字列の値1つだけをencodeURIでエンコードすると、&や=が生き残ってURLの構造そのものを壊すことがあります。実際に崩れる例を見ながら、encodeURIComponentとの境界線を整理します。
ネットワークアドレスとブロードキャストアドレスを引く「-2」の式が、なぜ/31と/32では成立しないのかをRFC3021とともに整理します。
192.168.1.130/26という、オクテットの境界をまたぐCIDRを例に、ビット演算でネットワークアドレスとブロードキャストアドレスが求まる仕組みを追います。
86400秒固定で進むUNIX時間とうるう秒の関係、変換時に注意すべき点を解説します。
ランダム生成のv4と時系列ソート可能なv7、それぞれの内部構造と適した用途を解説します。