Prismaのshcema.prismaをルールに沿って修正するprisma-schema-fixerをnpmパッケージとして公開しました。
どんなものか簡単に言うと、、
- model、enum、fieldの名前をルール(PascalCase/camelCase/sanake_case、単数/複数形など)に沿った形に統一
@@mapも同様に
といったものです。(詳しくはREADMEにて)
そうです、prisma-case-formatと同じようなものです。
prisma-case-formatを使っていて、prisma-case-formatに欲しい機能があってIssueをあげたり、依存ライブラリを更新するPull Requestを投げたりしてきたのですが、活動が1年くらい止まったままで動きがなさそうだったので、ならば自分でということで作りました。
最初はforkして作ろうと思ったのですが、今の形に機能として付け加えるのが厳しそうだったので、一から作り直した次第です。
prisma-case-format より良い点として下記の点があります。
- 設定がJavaScriptで書ける
- 型があるので間違えに気が付きやすいです。(ESLintの
eslint.config.jsと同じような感覚で)
- 型があるので間違えに気が付きやすいです。(ESLintの
- コードを書くことで柔軟な変換ができる
- 自分が欲しかったものとして、enumの
@@mapで接頭辞を付けるというものがあり、これはfunc: (value) => `enum_${value}`みたいなルールを書くことで実現できるようになっています。
- 自分が欲しかったものとして、enumの
まだいくつか欲しい機能があるので、今後も引き続き改善予定です!