[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-7387":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":16,"stars7d":16,"stars30d":17,"stars90d":16,"forks30d":16,"starsTrendScore":16,"compositeScore":18,"rankGlobal":10,"rankLanguage":10,"license":19,"archived":20,"fork":20,"defaultBranch":21,"hasWiki":22,"hasPages":22,"topics":23,"createdAt":10,"pushedAt":10,"updatedAt":34,"readmeContent":35,"aiSummary":36,"trendingCount":16,"starSnapshotCount":16,"syncStatus":37,"lastSyncTime":38,"discoverSource":39},7387,"JsonToKotlinClass","wuseal\u002FJsonToKotlinClass","wuseal","🚀 Plugin for Android Studio And IntelliJ Idea to generate Kotlin data class code from JSON text ( Json to Kotlin )","",null,"Kotlin",3179,184,31,55,0,1,28.8,"GNU General Public License v3.0",false,"master",true,[24,25,26,27,28,29,30,31,32,33],"android-studio-plugin","androidstudio-plugin","fastjson","gson","intellij-plugin","jackson","json-to-kotlin","kotlin","logansquare","moshi","2026-06-12 02:01:38","![JsonToKotlinClass](https:\u002F\u002Fraw.githubusercontent.com\u002Fwuseal\u002FJsonToKotlinClass\u002Fmaster\u002Fdoc\u002Ftitle.png)\n\n[![GitHub Workflow Status](https:\u002F\u002Fgithub.com\u002Fwuseal\u002FJsonToKotlinClass\u002Factions\u002Fworkflows\u002Fmain.yml\u002Fbadge.svg?branch=master)](https:\u002F\u002Fgithub.com\u002Fwuseal\u002FJsonToKotlinClass\u002Factions\u002Fworkflows\u002Fmain.yml)\n[![GitHub release](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Frelease\u002Fwuseal\u002FJsonToKotlinClass.svg?style=flat)](https:\u002F\u002Fgithub.com\u002Fwuseal\u002FJsonToKotlinClass\u002Freleases)\n[![GitHub stars](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fstars\u002Fwuseal\u002FJsonToKotlinClass.svg?style=social&label=Stars&style=plastic)](https:\u002F\u002Fgithub.com\u002Fwuseal\u002FJsonToKotlinClass\u002Fstargazers)\n[![JetBrains Plugin Download](https:\u002F\u002Fimg.shields.io\u002Fjetbrains\u002Fplugin\u002Fd\u002F9960-json-to-kotlin-class-jsontokotlinclass-.svg)](https:\u002F\u002Fplugins.jetbrains.com\u002Fplugin\u002F9960-jsontokotlinclass)\n[![GitHub closed issues](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fissues-closed\u002Fwuseal\u002FJsonToKotlinClass.svg)](https:\u002F\u002Fgithub.com\u002Fwuseal\u002FJsonToKotlinClass\u002Fissues?q=is%3Aissue+is%3Aclosed)\n[![license](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Flicense\u002Fwuseal\u002FJsonToKotlinClass.svg)](https:\u002F\u002Fgithub.com\u002Fwuseal\u002FJsonToKotlinClass\u002Fblob\u002Fmaster\u002FLICENSE)\n\n[![Kotlin](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002F%20language-Kotlin-blueviolet.svg)](https:\u002F\u002Fkotlinlang.org\u002F)\n[![IntelliJ Idea Plugin](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fplugin-IntelliJ%20%20Idea-blue.svg)](https:\u002F\u002Fplugins.jetbrains.com\u002Fplugin\u002F9960-jsontokotlinclass)\n[![Android Studio Plugin](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fplugin-AndroidStudio-green.svg)](https:\u002F\u002Fplugins.jetbrains.com\u002Fplugin\u002F9960-jsontokotlinclass)\n\n# JsonToKotlinClass\nHi, Welcome! This is a plugin to generate Kotlin `data class` from JSON string, in another word, a plugin that converts JSON string to Kotlin `data class` (Json to Kotlin).\nWe also have a `Java\u002FKotlin` [library](doc\u002FLIBRARY.md). With this you can generate Kotlin `data class` from JSON string **programmatically**. \n\n```groovy\nimplementation 'com.sealwu.jsontokotlin:library:3.7.4'\n```\n\n### Overview\n\nThis is a very cool tool for Kotlin developers, it can convert a JSON string to Kotlin `data class`. The tool could not only recognize the primitive types but also auto create complex types. It's easily accessible, we provide shortcut keymap `ALT + K` for Windows and `Option + K` for Mac, have a try and you'll fall in love with it! JsonToKotlinClass just makes programming more enjoyable, enjoy coding!\n[![image](https:\u002F\u002Fuser-images.githubusercontent.com\u002F9211902\u002F124459608-e1ff5b00-ddc0-11eb-959a-d7bce50d9233.png)](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=1Qmo-CY_OdE&t=68s)\n\n### Easy Use\n![alt text](https:\u002F\u002Fplugins.jetbrains.com\u002Ffiles\u002F9960\u002Fscreenshot_18032.png)\n\n#### Want to generate classes code in inner class model? Do like this.\n![alt text](https:\u002F\u002Fplugins.jetbrains.com\u002Ffiles\u002F9960\u002Fscreenshot_18031.png)\n\n#### Want to generate Kotlin data class file? Do like this.\n![alt text](https:\u002F\u002Fplugins.jetbrains.com\u002Ffiles\u002F9960\u002Fscreenshot_18030.png)\n\n#### Want to generate Kotlin data classes in single file? Do like this.\n![alt text](https:\u002F\u002Fplugins.jetbrains.com\u002Ffiles\u002F9960\u002Fscreenshot_18029.png)\n\n### Usage\n* Search 'JsonToKotlinClass' in Intellij Idea Plugin Repository Or AndroidStudio Plugin Repository And Install it.\n\n> File --> Settings --> Plugins --> Browse Repositories --> Search JsonToKotlinClass\n\n* Restart your IDE\n\n* Press `ALT + K` for Windows or `Option + K` for Mac or right click on package -> `New`->`Kotlin data clas file from JSON` and continue as guided.\n\n### Advanced usage\nHave a try with the advanced dialog :stuck_out_tongue_winking_eye:\n\n### Features\n* Generating Kotlin data class from any legal JSON string\u002FJSONSchema or any **URLs that returns a JSON string\u002FJSONSchema as response** or **local file that contains JSON string\u002FJSONSchema**, for more detail about supported source types, refer to [the documentation](https:\u002F\u002Fgithub.com\u002Fwuseal\u002FJsonToKotlinClass\u002Fblob\u002Fmaster\u002Fdoc\u002Fdoc_for_json_sources.md)\n* Generating Kotlin data class from any legal JSON text when right click on directory and select `New` -> `Kotlin data class File from JSON`\n* Supporting (almostly) all kinds of JSON libs' annotation(Gson, Jackson, Fastjson, MoShi and LoganSquare, kotlinx.serialization(default custom value))\n* [Customizing your own annotations](https:\u002F\u002Fgithub.com\u002Fwuseal\u002FJsonToKotlinClass\u002Fissues\u002F19)\n* [Initializing properties with default values](https:\u002F\u002Fgithub.com\u002Fwuseal\u002FJsonToKotlinClass\u002Fissues\u002F6)\n* Allowing properties to be nullable(?)\n* [Determining property nullability automatically](https:\u002F\u002Fgithub.com\u002Fwuseal\u002FJsonToKotlinClass\u002Fissues\u002F23)\n* Renaming property names to be camelCase style when selecting a target JSON lib annotation．\n* Generating Kotlin `data class` as individual classes\n* Generating Kotlin `data class` as inner classes\n* [Formatting any legal JSON string](https:\u002F\u002Fgithub.com\u002Fwuseal\u002FJsonToKotlinClass\u002Fissues\u002F18)\n* Generating Map Type when json key is primitive type\n* [Android Parcelable support](https:\u002F\u002Fgithub.com\u002Fwuseal\u002FJsonToKotlinClass\u002Fissues\u002F194)\n* [Customize parent class declaration](https:\u002F\u002Fgithub.com\u002Fwuseal\u002FJsonToKotlinClass\u002Fissues\u002F44)\n* Generating kotlin data class property order by alphabetical\n* [Support customizing this plugin by `Extensions` module](https:\u002F\u002Fgithub.com\u002Fwuseal\u002FJsonToKotlinClass\u002Fblob\u002Fmaster\u002Fdoc\u002Fdoc_for_extensions.md)\n\n### Generate Example\nThis is the example JSON from json.org\n\n```json\n{\n    \"glossary\":{\n        \"title\":\"example glossary\",\n        \"GlossDiv\":{\n            \"title\":\"S\",\n            \"GlossList\":{\n                \"GlossEntry\":{\n                    \"ID\":\"SGML\",\n                    \"SortAs\":\"SGML\",\n                    \"GlossTerm\":\"Standard Generalized Markup Language\",\n                    \"Acronym\":\"SGML\",\n                    \"Abbrev\":\"ISO 8879:1986\",\n                    \"GlossDef\":{\n                        \"para\":\"A meta-markup language, used to create markup languages such as DocBook.\",\n                        \"GlossSeeAlso\":[\n                            \"GML\",\n                            \"XML\"\n                        ]\n                    },\n                    \"GlossSee\":\"markup\"\n                }\n            }\n        }\n    }\n}\n```\nAnd with this plugin converting, Kotlin data classes would generate like this by default\n\n```kotlin\ndata class Example(\n    val glossary: Glossary\n)\n\ndata class Glossary(\n    val GlossDiv: GlossDiv,\n    val title: String\n)\n\ndata class GlossDiv(\n    val GlossList: GlossList,\n    val title: String\n)\n\ndata class GlossList(\n    val GlossEntry: GlossEntry\n)\n\ndata class GlossEntry(\n    val Abbrev: String,\n    val Acronym: String,\n    val GlossDef: GlossDef,\n    val GlossSee: String,\n    val GlossTerm: String,\n    val ID: String,\n    val SortAs: String\n)\n\ndata class GlossDef(\n    val GlossSeeAlso: List\u003CString>,\n    val para: String\n)\n```\n### Change Log\n* [Change log since 3.0.0](doc\u002FCHANGELOG.md)\n* [Change log 1.x.x](doc\u002FCHANGELOG_1.X.md)\n### Build From Source\n\nWant to try out the newest features?\n\n```shell\n$ git clone https:\u002F\u002Fgithub.com\u002Fwuseal\u002FJsonToKotlinClass\n$ cd JsonToKotlinClass\n$ .\u002Fgradlew buildPlugin\n```\n\nAnd you're done! Go to directory `build\u002Fdistributions` and you'll find `JsonToKotlinClass-x.x.zip`, which can be installed via **Install plugin from disk...**.\n\n### Contribute to This Repo\n\nFind it useful and want to contribute? All sorts of contributions are welcome, including but not limited to:\n\n- Open an issue [here](https:\u002F\u002Fgithub.com\u002Fwuseal\u002FJsonToKotlinClass\u002Fissues) if you find a bug;\n\n- Help test the EAP version and report bugs:\n\nGo to the \"Plugins\" settings, click \"Browse repositories...\" => \"Manage repositories...\" and click the \"+\" button to add the EAP channel repository URL \"https:\u002F\u002Fplugins.jetbrains.com\u002Fplugins\u002Feap\u002Flist\". Optionally, you can also add the Alpha and Beta channel repository URLs \"https:\u002F\u002Fplugins.jetbrains.com\u002Fplugins\u002Falpha\u002Flist\" and \"https:\u002F\u002Fplugins.jetbrains.com\u002Fplugins\u002Fbeta\u002Flist\".\n\n> Kindly note that the \"EAP\" or \"Alpha\" or \"Beta\" channel update may be unstable and tend to be buggy, if you want to get back to the stable version, remove the \"EAP\" or \"Alpha\" or \"Beta\" version and reinstall this plugin from the \"JetBrains Plugin Repository\" channel, which can be filtered by the drop-down menu next to the search input field.\n\n- Contribute your code:\n\n```shell\n$ git clone https:\u002F\u002Fgithub.com\u002Fwuseal\u002FJsonToKotlinClass\n$ cd JsonToKotlinClass\n```\n\nOpen the `build.gradle` in IntelliJ, open \"Gradle\" tool window, expand the project view to \"JsonToKotlinClass | Tasks | intellij | runIde\", right-click and choose \"Debug ...\", and you're done! Create your PR [here](https:\u002F\u002Fgithub.com\u002Fwuseal\u002FJsonToKotlinClass\u002Fpulls)!\n\n### Chinese Detail Document (中文文档)\n* http:\u002F\u002Fblog.csdn.net\u002Fwuseal\u002Farticle\u002Fdetails\u002F77508585\n\n### Others\n* Any kind of issues are welcome.\n* Pull Requests are highly appreciated.\n\n### Thanks\n* Thank [@davidbilik](https:\u002F\u002Fgithub.com\u002Fdavidbilik) for giving me the first awesome advice.\n* Thank [@cgoodroe](https:\u002F\u002Fgithub.com\u002Fcgoodroe) for opening many awesome issues for me, help me improve myself\n* Thank [@wangzhenguang](https:\u002F\u002Fgithub.com\u002Fwangzhenguang) for reminding me of the details of the problem\n* Thank [@kezhenxu94](https:\u002F\u002Fgithub.com\u002Fkezhenxu94\u002F) for introducing CI\u002FCD to save me a lot of time :)\n* Thank [iqbalhood](https:\u002F\u002Fgithub.com\u002Fiqbalhood) for contributing logo for this project\n* Thank [akindone](https:\u002F\u002Fgithub.com\u002Fakindone) for adding `order by alphabetical` feature for `JsonToKotlinClass`\n* Thank [rafalbednarczuk](https:\u002F\u002Fgithub.com\u002Frafalbednarczuk) for adding `make keyword property valid` feature for `JsonToKotlinClass`\n\n\n### Find it useful ? :heart:\n* Support and encourage me by clicking the :star: button on the upper right of this page. :v:\n* Share to others to help more people have a better develope expierience :heart:\n\n### Authors\nThis project exists thanks to all the people who contribute.\n\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fwuseal\u002FJsonToKotlinClass\u002Fgraphs\u002Fcontributors\">\u003Cimg src=\"https:\u002F\u002Fopencollective.com\u002Fjsontokotlin\u002Fcontributors.svg?width=890\" \u002F>\u003C\u002Fa>\n\n### Acknowledgement\n\nThe development of this plugin is powerly driven by JetBrains.\n\n### Join the Community\n\n| Let's talk |\n| -------- |\n| [Join JsonToKotlinClass Slack](https:\u002F\u002Fjoin.slack.com\u002Ft\u002Fjsontokotlinclass\u002Fshared_invite\u002FenQtNjk2NjM1MDM3MDA5LWYxYTI3ZDRlZTMyNDI2Mjg5NzZmZjQzM2ZlNjE5OTFmNWYyY2E0ZGEzZTQ3OWNhODEwOTUwYmU0YmRjZjQ5OGQ)|\n| [Join JsonToKotlinClass Telegram](https:\u002F\u002Ft.me\u002FJsonToKotlin) |\n### Note：\nWe analytics anonymous user behavior for improving plugin production, we've provided a switch case for that.\n","JsonToKotlinClass 是一个适用于 Android Studio 和 IntelliJ IDEA 的插件，能够将 JSON 字符串转换为 Kotlin 数据类代码。其核心功能包括自动识别基本类型和复杂类型，并支持通过快捷键（Windows 上的 `ALT + K` 或 Mac 上的 `Option + K`）快速生成数据类。此外，该项目还提供了一个 Java\u002FKotlin 库，允许开发者以编程方式实现 JSON 到 Kotlin 数据类的转换。该插件非常适合需要频繁处理 JSON 数据并与 Kotlin 语言结合使用的开发场景，极大地提高了开发效率和代码质量。",2,"2026-06-11 03:12:02","top_language"]