{"id":20364103,"url":"https://github.com/ekino/jcv-idea-plugin","last_synced_at":"2025-04-12T04:33:12.950Z","repository":{"id":37982975,"uuid":"244402189","full_name":"ekino/jcv-idea-plugin","owner":"ekino","description":"IntelliJ IDEA plugin for an enhanced coding experience on JCV based projects.","archived":false,"fork":false,"pushed_at":"2023-03-13T05:56:40.000Z","size":20460,"stargazers_count":7,"open_issues_count":6,"forks_count":0,"subscribers_count":20,"default_branch":"master","last_synced_at":"2025-03-26T00:04:04.660Z","etag":null,"topics":["autocomplete","idea","idea-plugin","intellij","jcv","json","kotlin"],"latest_commit_sha":null,"homepage":"https://plugins.jetbrains.com/plugin/13916-jcv","language":"Kotlin","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ekino.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-03-02T15:13:57.000Z","updated_at":"2023-12-01T07:37:59.000Z","dependencies_parsed_at":"2023-02-10T01:16:32.889Z","dependency_job_id":null,"html_url":"https://github.com/ekino/jcv-idea-plugin","commit_stats":null,"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekino%2Fjcv-idea-plugin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekino%2Fjcv-idea-plugin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekino%2Fjcv-idea-plugin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekino%2Fjcv-idea-plugin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ekino","download_url":"https://codeload.github.com/ekino/jcv-idea-plugin/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248517407,"owners_count":21117445,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["autocomplete","idea","idea-plugin","intellij","jcv","json","kotlin"],"created_at":"2024-11-15T00:09:48.314Z","updated_at":"2025-04-12T04:33:12.934Z","avatar_url":"https://github.com/ekino.png","language":"Kotlin","funding_links":[],"categories":[],"sub_categories":[],"readme":"# JCV plugin\nIntelliJ IDEA plugin for an enhanced coding experience on JCV based projects.\n\n[![Release](https://img.shields.io/github/release/ekino/jcv-idea-plugin/all.svg)](https://github.com/ekino/jcv-idea-plugin/releases)\n[![License](https://img.shields.io/github/license/ekino/jcv-idea-plugin.svg)](https://github.com/ekino/jcv-idea-plugin/blob/master/LICENSE.md)\n[![Jetbrains plugin](https://img.shields.io/jetbrains/plugin/v/13916-jcv.svg)](https://plugins.jetbrains.com/plugin/13916-jcv)\n[![Downloads](https://img.shields.io/jetbrains/plugin/d/13916-jcv.svg)](https://plugins.jetbrains.com/plugin/13916-jcv)\n\n\u003c!-- Plugin description --\u003e\nThis plugin brings the JCV language support injected in JSON language.\n\n## Auto-completion and documentation\n\nAny identified validator will get a quick documentation and even external links to official documentation for official JCV validators:\n\n![Validator documentation screenshot](./screenshots/jcv-demo-validator_documentation.png)\n\nAs you start typing in the JCV template pattern, a list of available validators will be suggested to you:\n\n![Completion list screenshot](./screenshots/jcv-demo-validator_completion_list.png)\n\nYou will also get parameter values completion if available, for example with the [date_time_format](https://ekino.github.io/jcv/documentation/validators.html#date_time_format) from [JCV](https://github.com/ekino/jcv):\n\n![Auto completion screencast](./screenshots/jcv-demo-auto_completion.gif)\n\n## Supported validators\n\n### Official ones\n\n[JCV](https://github.com/ekino/jcv) is a library allowing you to compare JSON contents with embedded validation.\nIt comes with plenty of pre-defined validators (listed [here](https://github.com/ekino/jcv/wiki/Predefined-validators))\ndesigned to cover the most common needs when validating data with non-predictable values.\n\n[JCV-DB](https://github.com/ekino/jcv-db) reuses these validators and also defines a list of its own\n(listed [here](https://github.com/ekino/jcv-db/wiki/Validators)) that are specific to a database-oriented usage.\n\nThis plugin offers autocompletion on all the validators of these two projects to date if detected in your project external libraries.\n\nUsing an official validator without the actual library linked to the current project module will give you a warning and can guide you to the Maven Central library page to get it:\n\n![Missing library screencast](./screenshots/jcv-demo-missing_library.gif)\n\n### Your custom ones\n\nYou can define your own custom validator definitions by adding a `.jcvdefinitions.json` file in the project root directory or just let the plugin do it for you:\n\n![Custom validator definition screencast](./screenshots/jcv-demo-custom_validator_definition.gif)\n\nHere is an example definition you can customize:\n\n`ROOT_PROJECT_DIRECTORY/.jcvdefinitions.json`\n```json\n{\n  \"validators\" : [ {\n    \"id\" : \"my_custom_validator\",\n    \"parameters\" : [ {\n      \"description\" : \"My first param\",\n      \"required\" : true,\n      \"suggested_values\" : [ \"Value 1\", \"Value 2\" ]\n    }, {\n      \"description\" : \"Another parameter\",\n      \"required\" : false,\n      \"suggested_values\" : [ \"Another value to suggest\" ]\n    } ]\n  } ]\n}\n```\n\n## Replacements suggestions\n\nThe plugin can find raw JSON value that can be replaced by official matching validators.\n\n![Replacement suggestions screenshot](./screenshots/jcv-demo-replacements_suggestions.png)\n\nNote that it also supports multi-caret replacement with matching validators for all JSON values find at each caret.\n\n![Replacement suggestions screencast](./screenshots/jcv-demo-replacements_suggestions.gif)\n\n## Settings\n\n### Color scheme\n\nYou can configure the color scheme settings:\n\n![Color scheme settings screenshot](./screenshots/jcv-demo-color_settings.png)\n\n### Inspections\n\nHere are the available inspections that you can customize:\n\n![Inspections screenshot](./screenshots/jcv-demo-inspections.png)\n\n### Intentions\n\nYou can find the JCV replacement suggestions on JSON values in the intentions:\n\n![Intentions screenshot](./screenshots/jcv-demo-intentions.png)\n\u003c!-- Plugin description end --\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fekino%2Fjcv-idea-plugin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fekino%2Fjcv-idea-plugin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fekino%2Fjcv-idea-plugin/lists"}