[小ネタ] jsonデータから別の形式に変換したいときに「transform.tools」というサイトがとても便利だった

2021.07.07

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

どうも!西村祐二です。

jsonからyamlの形式に変換したい、jsonデータから型定義を作りたいなど、あるデータ形式から別の形式に変換したいことはよくあると思います。

データ変換するようなサイトは単体ではよく見かけるのですが、ある程度まとまったサイトがないか探したところ

transform.tools

というサイトが良さそうだったので紹介したいと思います。

対応している形式

※2021/07/07時点の情報となります。

充実したラインナップですね。

- SVG
to JSX
to React Native

- HTML
to JSX
to Pug

- JSON
to Big Query Schema
to Flow
to Go Bson
to Go Struct
to GraphQL
to io-ts
to JSDoc
to JSON Schema
to Kotlin
to MobX-State-Tree Model
to Mongoose Schema
to MySQL
to React PropTypes
to Rust Serde
to Sarcastic
to Scala Case Class
to TypeScript
to YAML

- JSON Schema
to OpenAPI Schema
to Protobuf
to TypeScript

- CSS
to JS Objects
to TailwindCSS
to template literal
JavaScript
to JSON

- GraphQL
to Components
to Flow
to Fragment Matcher
to Introspection JSON
to JAVA
to Resolvers Signature
to Schema AST
to TypeScript
to TypeScript MongoDB

- JSON-LD
to Compacted
to Expanded
to Flattened
to Framed
to N-Quads
to Normalized

- TypeScript
to Flow
to JSON Schema
to TypeScript Declaration
Flow
to TypeScript
to TypeScript Declaration

- Others
Markdown to HTML
XML to JSON
YAML to JSON

使い方は直感的で左側に変換元のデータを入力すると右側に変換されたデータが表示されます。

特徴的な機能

「へ〜こんな機能もあるんだ〜」って思ったものを少し紹介したいと思います。

JSON to Rust Serde

jsonデータをRust用のシリアライゼーションフレームワークであるSerdeで使える形に変換してくれるみたいです。

Serdeについては下記ブログが参考になるかと思います。

[Rust] Serdeのシリアライズ/デシリアライズを試してみる

CSS to TailwindCSS

CSSをTailwind CSSの形式に変換してくれるみたいです。

GraphQLのコンポーネント生成

GraphQLのコンポーネントを生成することもできるようです。

機能が足りないと思ったら

やりたいことができないと思ったら、ソートコードがGitHubで公開されているみたいなのでIssueをあげたり、コントリビュートしてみると良いかもしれません。

さいごに

jsonからyamlの形式に変換したい、jsonデータから型定義を作りたいなど、あるデータ形式から別の形式に変換したいときに使える

transform.tools

を紹介しました。

また、もっといいサイトなどあったら教えて下さい。

誰かの参考になれば幸いです。