A CLI tool to convert JSON object into Kotlin data class
To install this CLI tool, run the command npm i -g j2dc
- Copy the JSON you want to convert to kotlin data class to your clipboard.
- Run the command
j2dc
in terminal. - You will see the resultant data class on terminal and the data class will also be automatically copied to your clipboard.
- Now you don't have to explicitly copy the data class since it is already copied.
- You can paste it in your kotlin file and use it.
- Run the command
j2dc -i
in terminal. - It will open a vim session where you can input your JSON.
- Once you provide the input, the resultant data class will be printed on terminal and also copied to clipboard.
- Run the command
j2dc -j
in terminal. - This will return you data class with jackson annotations based on the json object copied in your clipboard.
- The same data class will also be copied to your clipboard (default behaviour).
- In default behaviour, the data class output will always have nullable field types.
- If you want the data types to be non-nullable, this flag can be passed.
j2dc -n
- This tool does not understand
Double
orFloat
data types. It will always consider any number asInt
. So in a case where you require the data type to be one of those, you will have to manually change the data types of those fields. - You can pass multiple flags at once :
j2dc -i -n -j
- Pass the flag
--help
to understand how to use the tool.
- If you are getting the error
env: /usr/local/bin/node: No such file or directory
.- Run
which node
. This shows the node executable path in your machine. - Run
sudo cp <node_executable_path_in_your_machine> /usr/local/bin/node
. (temporary solution) - Now, run j2dc again. It should solve the issue.
- Run
- Add -s flag to get the output data class with keys in sorted manner.
- Add support for Float/Double data types.