dsh-json-types
Manifest valid@{name=dsh-json-types; version=0.1.0; description=JSON 类型生成:把 JSON 数据转换为 TypeScript 接口 / JSON Schema / Python(Pydantic) 模型,自动推断字段类型、嵌套对象与数组元素类型; type=module; main=lib/index.js; exports=; files=System.
dsh-json-types · JSON 类型生成
把一段 JSON 数据一键转换为 TypeScript 接口 / JSON Schema / Python(Pydantic) 模型,自动推断字段类型、嵌套对象、数组元素类型、可选字段。纯 Node 实现,无网络、无外部服务。
提供的工具
| 工具 | 作用 |
|---|---|
| json_to_ts | JSON → TypeScript 接口 |
| json_to_schema | JSON → JSON Schema(draft-07) |
| json_to_python | JSON → Python Pydantic 模型 |
安装
dsh plugin add dsh-json-types
安装后在 profile 的 package.json 的 dsh.profile.bundles 中加入 "dsh-json-types"。
用法示例
把这个接口响应转成 TypeScript 类型
→ 调用 json_to_ts(data=<JSON>)
转成 JSON Schema 做校验
→ 调用 json_to_schema(data=<JSON>)
转成 Python 模型
→ 调用 json_to_python(data=<JSON>)
说明
- 嵌套对象生成命名接口/模型,数组元素为对象时合并各元素字段、缺失字段标记为可选(
?/Optional)。 - 类型推断基于样本数据(字符串可能实为枚举/日期等),复杂场景可生成后人工微调。
安装
dsh plugin add github:uckkk/dsh-json-types
安装即在本机运行第三方代码,请自行审阅源码。
安装
dsh plugin add github:uckkk/dsh-json-types
使用
安装后在会话中调用该插件注册的工具即可。
许可
MIT
安装即在本机运行第三方代码,请自行审阅源码。
Similar plugins
by uckkk
@{name=dsh-json-flatten; version=0.1.0; description=JSON 扁平化:嵌套 JSON ↔ 点号扁平键互转(支持数组索引); type=module; main=./index.js; exports=; files=System.Object[]; dsh=; keywords=System.Object[]; author=istone <ad
★ 0
↓ 30/wk
MIT
JavaScript
Aug 19, 2026
dsh plugin --profile web add dsh-json-flattenby uckkk
@{name=dsh-toml; version=0.1.0; description=TOML ↔ JSON 转换; type=module; main=lib/index.js; exports=; files=System.Object[]; dsh=; keywords=System.Object[]; author=istone <ad571@qq.com>; license=MIT;
★ 0
MIT
JavaScript
Aug 19, 2026
dsh plugin --profile web add dsh-tomlby uckkk
@{name=dsh-jwt-uckkk; version=0.1.0; description=JWT 解码:解析 header/payload,判断过期(不验签); type=module; main=lib/index.js; exports=; files=System.Object[]; dsh=; keywords=System.Object[]; author=istone <ad5
★ 0
MIT
JavaScript
Aug 17, 2026
dsh plugin --profile web add dsh-jwt-uckkkby uckkk
@{name=dsh-base64url; version=0.1.0; description=Base64URL 编解码; type=module; main=lib/index.js; exports=; files=System.Object[]; dsh=; keywords=System.Object[]; author=istone <ad571@qq.com>; license=M
★ 0
MIT
JavaScript
Aug 19, 2026
dsh plugin --profile web add dsh-base64urlby uckkk
@{name=dsh-url; version=0.1.0; description=URL 工具:解析 URL 为结构化成分,或用参数构造 URL; type=module; main=lib/index.js; exports=; files=System.Object[]; dsh=; keywords=System.Object[]; author=istone <ad571@qq.com
★ 0
MIT
JavaScript
Aug 19, 2026
dsh plugin --profile web add dsh-urlby uckkk
@{name=dsh-number-format; version=0.1.0; description=数字格式化:千分位、小数位、货币符号、百分比; type=module; main=lib/index.js; exports=; files=System.Object[]; dsh=; keywords=System.Object[]; author=istone <ad571@qq.co
★ 0
MIT
JavaScript
Aug 19, 2026
dsh plugin --profile web add dsh-number-format