承接 sirmekus/nkem 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

sirmekus/nkem

最新稳定版本:1.3

Composer 安装命令:

composer require sirmekus/nkem

包简介

A package that replaces values in a JSON file to their \"types\" in either Typescript, JSON

README 文档

README

This is a CLI package that replaces values in a JSON file to their types in either Typescript or JSON.

If you work on developing API, you'll agree that it's important to have a good understanding of the data that's being sent to and from the API/server. This package aims to make that process easier by generating valid "types" for your JSON response(s) via feeding it with a sample of an actual response (stored in a JSON file).

You can also, of course, use it to generate valid type interface for your TypeScript code.

By the way, "Nkem" is a word that means "my own" in Igbo language.😉

Installation

To install the package, run:

composer require sirmekus/nkem

How To Use

After installing the package, run it in your terminal like so:

./vendor/bin/type path/to/your.json

If you want its TypeScript representation, run it like so:

./vendor/bin/type path/to/your.json --format=ts

By default, the generated file will retain the name of the supplied JSON file with "-type" appended to it. You can change this behavior by using the --name flag. For example, if you want to name the generated file "custom-name.ts", you can run it like so (without the extension):

./vendor/bin/type path/to/your.json --format=ts --name=custom-name

Limitations

The types will be generated based on the values in the JSON file.

Also, if a key can contain a range of possible types (like "string|number"), the package may not be able to interpret it correctly. For example, if the JSON file contains a key whose value can either be a string or an number but the value in the JSON file is a string, its type will be generated as string.

To rectify this limitation, manual interaction may be required for the affected keys after generating the types.

Primarily, the package does the heavy lifting of generating the types for you.

Contributing

Of course, there can always be room (and parlour 😁) for improvement. If you have any suggestions or ideas, please feel free to open an issue or submit a pull request.

License

This package is licensed under the MIT License.

统计信息

  • 总下载量: 8
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 1
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2025-07-15