O hirunewani blog

Frontend Weekly 2025-03-21

Created at

Valibot v1、Node.js v20.19.0、contenteditable=plaintext-only、GitHub REST API supports issue type、GitHub Fine-grained PAT GAなど

Valibot v1: The 1 KB Schema Library

Valibotのv1がリリースされました。

https://valibot.dev/blog/valibot-v1-the-1-kb-schema-library/

ValibotはZodの代替となるバリデーションライブラリであり利用方法はほぼ同じですが、 Zodと比較して非常に軽量です。バンドルサイズがZodより90%以上小さくなることが確認されています。

Node.js v20.19.0: Backport require(esm)

Node.js v20.19.0がリリースされました。require(esm)がバックポートされデフォルトで有効化されています。

https://nodejs.org/en/blog/release/v20.19.0

contenteditable属性の”plaintext-only”値がBaseline Newlyに

ユーザーのプレーンテキストの入力をtextarea要素以外でサポートする際に利用できるcontenteditable属性の”plaintext-only”値がBaseline Newlyで利用可能になりました。

https://web.dev/blog/contenteditable-plaintext-only-baseline?hl=en

Edit me! contenteditable="plaintext-only" demo.
Edit me! contenteditable="true" demo.

プレーンテキストとは、リッチテキストではないもの、文字の大きさや色、書式などの装飾がないテキストのことです。つまりplaintext-onlyでは、文字を張り付けた場合、textarea要素と同様にテキストの装飾が引きはがされます。

GitHubのREST APIがissue typeをサポート

GitHubのREST APIがissue typeをサポートしました。

https://github.blog/changelog/2025-03-18-github-issues-projects-rest-api-support-for-issue-types/

Organizationに登録されたissue typeの取得、issueに設定されたissue typeの取得、issue typeによるissueの検索ができるようになりました。

GitHub Fine-grained PATが一般公開

GitHubのFine-grained PAT(Personal Access Token)がGAになりました。全てのOrganizationにおいてデフォルトで有効化されています。

https://github.blog/changelog/2025-03-18-fine-grained-pats-are-now-generally-available/

以前のPATはclassic PATと呼ばれており、Fine-grained PATに比べて次のような課題がありました。

  • OrganizationやUser、Repository毎に権限を管理できない。
  • スコープがuser/repoのように粗い粒度でしか設定できない。

Fine-grained PATを利用することで、より安全な権限管理が可能になります。